Partilhar via


Aviso do compilador (nível 3) CS1717

Atribuição feita à mesma variável; Pretendia atribuir outra coisa?

Esse aviso ocorre quando você atribui uma variável a si mesma, como a = a.

Vários erros comuns podem gerar este aviso:

  • Escrever a = a como a condição de uma instrução if , como if (a = a). Você provavelmente quis dizer if (a == a), o que é sempre verdade, então você poderia escrever isso de forma mais concisa como if (true).

  • Erro de digitação. Você provavelmente quis dizer a = b.

  • Em um construtor onde o parâmetro tem o mesmo nome que o campo, não usando esta palavra-chave: você provavelmente quis dizer this.a = a.

Exemplo

O exemplo a seguir gera CS1717.

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