更新 : 2007 年 11 月
エラー メッセージ
同じ変数に割り当てられました。他の変数に割り当てますか?
この警告は、a = a のように、同じ変数どうしで代入しようとした場合に発生します。
この警告が発生する一般的な原因としては、次のようなケースが考えられます。
if ステートメントで a = a のような条件を記述した (例 : if (a = a))。実際は if (a == a) と記述しようとした可能性があります。ただし、この条件は常に true を返すため、より簡潔に if (true) と記述することもできます。
タイプミス。a = b と記述すべきところを間違って入力したケースです。
コンストラクタでパラメータ名とフィールド名が競合するにもかかわらず、this キーワードを使用しなかった (正しくは this.a = a)。
使用例
次の例では CS1717 エラーが生成されます。
// CS1717.cs
// compile with: /W:3
public class Test
{
public static void Main()
{
int x = 0;
x = x; // CS1717
}
}