メインコンテンツにスキップ

assignment_to_const

定数変数は初期化後に値を代入できません。

説明

#

この診断は、トップレベル変数、静的フィールド、または const 修飾子が付いたローカル変数への代入が見つかった場合にアナライザーによって生成されます。コンパイル時定数の値は実行時に変更できません。

#

次のコードは、cconst 修飾子を持っているにもかかわらず値が代入されているため、この診断を生成します。

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);
}