Číst v angličtině

Sdílet prostřednictvím


Upozornění kompilátoru (úroveň 3) CS1717

Přiřazení provedené do stejné proměnné; chtěla jste přiřadit něco jiného?

K tomuto upozornění dochází, když přiřadíte proměnnou sama sobě, například a = a.

Toto upozornění může vygenerovat několik běžných chyb:

  • Zápis a = a jako podmínky příkazu if , například if (a = a). Pravděpodobně jste chtěli říci if (a == a), což je vždy pravda, takže byste mohli napsat to výstižněji jako if (true).

  • Chybné přetypování. Asi jsi chtěl říct a = b.

  • V konstruktoru, kde má parametr stejný název jako pole, nepoužívá toto klíčové slovo: pravděpodobně jste chtěli říci this.a = a.

Příklad

Následující ukázka vygeneruje CS1717.

// CS1717.cs  
// compile with: /W:3  
public class Test  
{  
   public static void Main()  
   {  
      int x = 0;  
      x = x;   // CS1717  
   }  
}