Exportar (0) Imprimir
Expandir Tudo
Expandir Minimizar
Este artigo foi traduzido por máquina. Coloque o ponteiro do mouse sobre as frases do artigo para ver o texto original. Mais informações.
Tradução
Original

Erro do Compilador CS1019

Operador unário de Overloadable esperado

Algo que parece um operador unário sobrecarregado foi declarado, mas o operador está ausente ou está errado no local na assinatura.

Um operador unário é um operador que funcionam em um operando único. Por exemplo, ++ é um operador unário. Você pode sobrecarregar alguns operadores unários usando a palavra-chave de operator e especificando um único parâmetro de tipo que o operador opera. Por exemplo, se você quiser sobrecarregar o operador ++ para uma classe definida pelo usuário Temperature de forma que você possa gravar Temperature++, você pode defini-lo dessa maneira:

public static  Temperature operator ++ (Temperature temp)
{
    temp.Degrees++;
    return temp;
}

Quando você receber esse erro, você declarou algo que parece um operador unário sobrecarregado, a menos que o próprio operador está ausente ou está errado no local na assinatura. Se você remover ++ de assinatura no exemplo anterior, você irá gerar CS1019.

O seguinte código gerenciado CS1019:

// CS1019.cs
public class ii
{
   int i
   {
      get
      {
         return 0;
      }
   }
}

public class a
{
    public int i;
// Generates CS1019: "ii" is not a unary operator.
   public static a operator ii(a aa)   
                                       
   // Use the following line instead:
   //public static a operator ++(a aa)
   {
      aa.i++;
      return aa; 
   }

   public static void Main()
   {
   }
}

Contribuições da comunidade

ADICIONAR
Mostrar:
© 2014 Microsoft