empty_struct
類 '{0}' 不能是空的,因為它繼承自 '{1}'。
描述
#當 Struct 或 Union 的子類沒有任何欄位時,分析器會產生此診斷。不支援空的 Struct 或 Union。
有關 FFI 的更多資訊,請參閱 使用 dart:ffi 進行 C 互操作。
示例
#以下程式碼會產生此診斷,因為類 C 繼承自 Struct,但未宣告任何欄位
dart
import 'dart:ffi';
final class C extends Struct {}常見修復方法
#如果該類旨在用作結構體,則宣告一個或多個欄位
dart
import 'dart:ffi';
final class C extends Struct {
@Int32()
external int x;
}如果該類旨在用作 Pointer 的型別引數,則使其成為 Opaque 的子類
dart
import 'dart:ffi';
final class C extends Opaque {}如果該類並非旨在用作結構體,則刪除或修改 extends 子句
dart
class C {}