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

prefer_typing_uninitialized_variables

初期化されていないフィールドには、明示的な型注釈が必要です。

初期化されていない変数には、明示的な型注釈が必要です。

説明

#

初期化子がなく、明示的な型注釈もない変数が存在する場合、アナライザーはこの診断を生成します。

型注釈も初期化子もない場合、変数は dynamic 型になり、どのような値でも代入できるようになります。これは、特定が困難なバグを引き起こす原因となることがよくあります。

#

以下のコードは、変数 r に型注釈も初期化子もないため、この診断を生成します。

dart
Object f() {
  var r;
  r = '';
  return r;
}

一般的な修正

#

変数を初期化できる場合は、初期化子を追加してください。

dart
Object f() {
  var r = '';
  return r;
}

変数を初期化できない場合は、明示的な型注釈を追加してください。

dart
Object f() {
  String r;
  r = '';
  return r;
}