Avertissement du compilateur (niveau 3) CS1717
Assignation effectuée à la même variable ; souhaitiez-vous assigner un autre élément ?
Cet avertissement se produit quand vous assignez une variable à elle-même (par exemple a = a
.
Plusieurs erreurs courantes peuvent générer cet avertissement :
Écriture de
a = a
comme condition d’une instruction if , par exempleif (a = a)
. Vous souhaitiez probablement indiquerif (a == a)
, qui est toujours vrai ; vous pouvez donc mentionner de façon plus conciseif (true)
.Erreur de frappe. Vous souhaitiez probablement indiquer
a = b
.Dans un constructeur dans lequel le paramètre porte le même nom que le champ, sans utilisation du mot clé this : vous souhaitiez probablement indiquer
this.a = a
.
Exemple
L’exemple suivant génère l’avertissement CS1717.
// CS1717.cs
// compile with: /W:3
public class Test
{
public static void Main()
{
int x = 0;
x = x; // CS1717
}
}