微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

如何解决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 举报,一经查实,本站将立刻删除。