使用 Dart 调用 C 语言中 API,其中无疑需要处理一点就是类型的映射和统一,也就是怎么在 Dart 中可以使用到 C 中的一些数据类型。所以 NativeType 这个类就是映射了 C 语言中的一些基本数据类型。
描述 C 语言层 NativeType 的子类型 | 含义 | 映射对应 Dart 层的数据类型 |
---|---|---|
Int8 | 表示 C 中有符号位 8 位整型 | int |
Int16 | 表示 C 中有符号位 16 位整型 | int |
Int32 | 表示 C 中有符号位 32 位整型 | int |
Int64 | 表示 C 中有符号位 64 位整型 | int |
Unit8 | 表示 C 中无符号位 8 位整型 | int |
Unit16 | 表示 C 中无符号位 16 位整型 | int |
Unit32 | 表示 C 中无符号位 32 位整型 | int |
Unit64 | 表示 C 中无符号位 64 位整型 | int |
IntPtr | 表示 C 中指针大小整型 | int |
Double | 表示 C 中 64 位的 double 双精度类型 | double |
Float | 表示 C 中 32 位的 float 单精度类型 | double |
Pointer | 表示指向 C 中内存一个指针,一般表示引用类型 | Pointer |
NativeFunction | 表示 C 中的函数类型 | Function |
Void | 表示 C 中的 void 空类型 | void |
Pointer<Utf8> | 表示 C 中的字符串类型(char *) | Pointer<Utf8> |
THE END