dart:ffi
庫中Union
類的用法介紹如下。
所有 FFI 聯合類型的超類型。
FFI 聯合類型應擴展此類並聲明與底層本機聯合對應的字段。
Union 子類聲明中的字段聲明會自動獲得一個 setter 和 getter 實現,該實現可訪問內存中的本機聯合字段。
Union 子類聲明中的所有字段聲明必須具有類型 int 或 double 並使用表示本機類型的 NativeType 進行注釋,或者必須是類型 Pointer 。例如:
typedef union {
int a;
float b;
void* c;
} my_union;
class MyUnion extends Union {
@Int32()
external int a;
@Float()
external double b;
external Pointer<Void> c;
}
Union 子類聲明中的所有字段聲明都必須標記為 external
。您不能創建該類的實例,隻能讓它指向現有的本機內存,因此沒有用於存儲非本機字段的內存。外部字段也不能被構造函數初始化,因為沒有創建 Dart 對象。
Union 的子類的實例具有引用語義並由本機內存支持。可以通過分配分配或從 Pointer 加載,但不能由生成構造函數創建。
- 繼承
-
Object > NativeType > Union
相關用法
- Dart UnmodifiableMapView用法及代碼示例
- Dart UnmodifiableSetView.contains用法及代碼示例
- Dart UnmodifiableListView用法及代碼示例
- Dart UnmodifiableSetView用法及代碼示例
- Dart UnmodifiableSetView.lookup用法及代碼示例
- Dart UnmodifiableListView.length用法及代碼示例
- Dart UriData.parse用法及代碼示例
- Dart Uri.decodeFull用法及代碼示例
- Dart Uri.replace用法及代碼示例
- Dart Uri.parse用法及代碼示例
- Dart Uri.dataFromString用法及代碼示例
- Dart Uri.tryParse用法及代碼示例
- Dart Utf8Decoder用法及代碼示例
- Dart UriData.mimeType用法及代碼示例
- Dart Uint8List.sublist用法及代碼示例
- Dart Uri.encodeComponent用法及代碼示例
- Dart Uri.directory用法及代碼示例
- Dart Uint16List.sublist用法及代碼示例
- Dart Uri.toFilePath用法及代碼示例
- Dart Uint32List.sublist用法及代碼示例
- Dart Uri.file用法及代碼示例
- Dart Uri.decodeComponent用法及代碼示例
- Dart Uri用法及代碼示例
- Dart Uint8ClampedList.sublist用法及代碼示例
- Dart Uri.dataFromBytes用法及代碼示例
注:本文由純淨天空篩選整理自dart.dev大神的英文原創作品 Union class。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。