我正在尝试从 dart 中的 c++ 函数获取返回值。
我的 C++ 代码是这样的
static bool is_alive() {
return true;
}
从 dart 中,我用这个本机代码加载了共享库,我正在尝试调用该is_alive()
函数。
typedef BooleanFunction = Pointer<Int8> Function();
Pointer<NativeFunction<BooleanFunction>> isAlive = (functionAddress).cast<NativeFunction<BooleanFunction>>();
Pointer<Int8> Function() isAliveFunc = isAlive.asFunction();
然后我调用了isAliveFunc
from dart,我想要那个函数的结果。我尝试了所有这些方法。这些都不起作用。
Pointer<Int8> casted = isAliveFunc()!.cast();
Pointer<Int8>? fromPointer = isAliveFunc()!;
developer.log('value : $casted');
我得到这样的结果 Pointer<Int8>: address=0x1
如何从 dart 中的此指针中获取值?我希望得到 1 或 0 作为结果。