跳到主要内容

非正数组维度

数组维度必须是正数。

描述

#

Array 注解中给定的维度小于或等于零(0)时,分析器会产生此诊断信息。

有关 FFI 的更多信息,请参阅使用 dart:ffi 进行 C 语言互操作

示例

#

以下代码产生此诊断信息,因为提供了数组维度 -8

dart
import 'dart:ffi';

final class MyStruct extends Struct {
  @Array(-8)
  external Array<Uint8> a0;
}

常见修复方法

#

将维度更改为正整数

dart
import 'dart:ffi';

final class MyStruct extends Struct {
  @Array(8)
  external Array<Uint8> a0;
}

如果这是一个可变长度的内联数组,请将注解更改为 Array.variable()

dart
import 'dart:ffi';

final class MyStruct extends Struct {
  @Array.variable()
  external Array<Uint8> a0;
}