Ler em inglês

Partilhar via


Aviso do compilador (nível 3) CS0414

O campo privado 'campo' é atribuído, mas seu valor nunca é usado

Esse aviso pode ocorrer em vários cenários nos quais o compilador pode verificar se uma variável nunca é referenciada:

  • Um campo privado recebe um valor constante, mas nunca é lido posteriormente. A atribuição desnecessária pode afetar o desempenho. Considere remover o campo.

  • Um campo estático privado ou interno recebe um valor constante somente no inicializador. Considere alterar o campo para um const.

  • Um campo privado ou interno recebe valores constantes e só é usado em blocos que são excluídos por diretivas #ifdef. Considere colocar o campo dentro do bloco #ifdef.

  • Um campo privado ou interno recebe valores constantes em vários locais, mas não é acessado de outra forma. Se não precisar do campo, considere removê-lo. Caso contrário, use-o de alguma forma apropriada.

Em outras situações, ou onde a solução sugerida não é aceitável, use #pragma 0414.

O exemplo a seguir mostra uma maneira na qual CS0414 será gerado:

// CS0414
// compile with: /W3
class C
{
   private int i = 1;  // CS0414

   public static void Main()
   { }
}

Nota

Se a variável i for declarada como protected ou public, nenhum erro será gerado porque o compilador não pode saber se uma classe derivada pode usá-la ou algum outro código de cliente pode instanciar a classe e fazer referência à variável

Consulte também