地址 属性
底层数据的内存地址。
形式为 expression.address
的表达式表示此 address
,只能作为整个参数表达式在调用叶子 Native 外部函数时出现。
示例
@Native<Void Function(Pointer<Int8>)>(isLeaf: true)
external void myFunction(Pointer<Int8> pointer);
void main() {
final list = Int8List(10);
myFunction(list.address);
}
在 .address
之前的表达式像赋值运算符的左侧一样被评估,得到可以访问表达式后存储的东西,这可以用于读写。然后 .address
提供对该存储的本地指针。
在调用叶子 Native 外部函数时,.address
被评估,以确保 Dart 垃圾收集器不会移动地址指向的对象。
实现
external Pointer<Int8> get address;