field_initializer_in_struct
Constructors in subclasses of 'Struct' and 'Union' can't have field initializers.
Description
#The analyzer produces this diagnostic when a constructor in a subclass of
either Struct
or Union
has one or more field initializers.
For more information about FFI, see C interop using dart:ffi.
Example
#The following code produces this diagnostic because the class C
has a
constructor with an initializer for the field f
:
dart
// @dart = 2.9
import 'dart:ffi';
final class C extends Struct {
@Int32()
int f;
C() : f = 0;
}
Common fixes
#Remove the field initializer:
dart
// @dart = 2.9
import 'dart:ffi';
final class C extends Struct {
@Int32()
int f;
C();
}
除非另有说明,文档之所提及适用于 Dart 3.7.3 版本,本页面最后更新时间: 2025-05-08。 查看文档源码 或者 报告页面问题。