C ++方面的一些阅读kref_kotlin麻烦,变量中的奇怪值

问题描述

我已经为Android Arm64目标构建了本地kotlin库,kotlin生成了* .h和* .so文件,将这些文件添加到Android项目中,并尝试通过认H文件kotlin函数在c ++端创建kref_values:

mylib_ExportedSymbols* symbols = mylib_symbols();
auto kdouble = symbols->createNullableDouble(12345678.88);
if (kdouble.pinned != nullptr) {
    auto val = *(static_cast<double*>)(kdouble.pinned);
    // val has strange value,and it diferents from 12345678.88
    std::cout << "double = " << val << std::endl;
}

kdouble的类型:

typedef struct {
   mylib_KNativePtr pinned;
} mylib_kref_kotlin_Double;

如果我在h文件中没有其他合适的函数来从mylib_kref_kotlin_Double类型提取双精度值时,如何读取该双精度值?

谢谢。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)