assignment_to_const
常量变量在初始化后不能再被赋值。
描述
#分析器在发现对带有 const
修饰符的顶层变量、静态字段或局部变量进行赋值时会产生此诊断信息。编译时常量的值在运行时不能改变。
示例
#以下代码会产生此诊断信息,因为变量 c
尽管带有 const
修饰符,却被赋予了值
dart
const c = 0;
void f() {
c = 1;
print(c);
}
常见修复方法
#如果变量必须可赋值,则移除 const
修饰符
dart
var c = 0;
void f() {
c = 1;
print(c);
}
如果常量不应被修改,则移除赋值操作,或使用局部变量代替对该常量的引用
dart
const c = 0;
void f() {
var v = 1;
print(v);
}