コードインスペクション:ローカル関数内の変数が外部スコープの変数を隠しています
このインスペクションは、内部スコープで宣言されたローカル変数またはパラメーターが外部スコープから変数を隠蔽している場合に、その変数またはパラメーターを報告します。 ネストされたローカル関数またはラムダ式で同じ名前を再利用すると、コードがどの変数を読み取ったり変更したりしているのかが分かりにくくなる場合があります。
サンプル
void M()
{
int value = 1;
void Local()
{
int value = 2;
Console.WriteLine(value);
}
}
void M()
{
int value = 1;
void Local()
{
int localValue = 2;
Console.WriteLine(localValue);
}
}
クイックフィックス
外側の変数が隠れてしまわないように、内側の変数の名前を変更してください。
2026 年 6 月 12 日