编译器警告(等级 3)CS1717

对同一变量进行赋值;是否希望对其他变量赋值?

当你将一个变量分配到其自身(例如 a = a)时,会出现此警告。

几个常见的错误将会生成此警告:

  • a = a 编写为 if 语句的条件,如 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  
   }  
}