跳到主内容

definitely_unassigned_late_local_variable

late 局部变量 '{0}' 在此处肯定未被赋值。

描述

#

确定赋值分析表明一个被标记为 late 的局部变量在其被赋值之前就被读取时,分析器会产生此诊断信息。

示例

#

以下代码产生此诊断信息,因为 x 在被读取之前未被赋值

dart
void f(bool b) {
  late int x;
  print(x);
}

常见修复方法

#

在读取变量之前为其赋值

dart
void f(bool b) {
  late int x;
  x = b ? 1 : 0;
  print(x);
}