コンパイラの警告 (レベル 3) CS0414
更新 : 2007 年 11 月
エラー メッセージ
private フィールド 'フィールド' は割り当てられていますが、その値が使用されていません
この警告は、変数が一度も参照されないことをコンパイラで検証できた場合に発生します。次のような状況が考えられます。
プライベート フィールドに定数値が代入されたが、その後読み取られていない。不要な代入が、パフォーマンスに悪影響を及ぼす場合があります。フィールドを削除することを考慮してください。
プライベート フィールドや内部静的フィールドが、初期化子の中でだけ定数値を代入されている。フィールドを const に変更することを考慮してください。
プライベート フィールドや内部フィールドには定数値が代入されているが、#ifdef ディレクティブによって除外されているブロックの中でだけ使用されている。フィールドを #ifdef ブロックの中に入れることを考慮してください。
プライベート フィールドまたは内部フィールドに複数の場所で定数値が代入されているのに、それ以外にはアクセスされていない。このフィールドが不要な場合は、削除することを考慮してください。必要な場合は、適切な方法で使用してください。
その他の場合、あるいは上記に提案された回避策を使用できない場合は、#pragma 0414 を使用してください。
次の例は、CS0414 エラーになる状況の 1 つを示しています。
// CS0414
// compile with: /W3
class C
{
private int i = 1; // CS0414
public static void Main()
{ }
}
メモ 変数 i を protected または public として宣言した場合、エラーは生成されません。コンパイラでは、その変数が派生クラスで使用される可能性や、他のクライアント コードがクラスをインスタンス化して変数を参照する可能性があるかどうかを確認できないためです。