Partilhar via


Erro do compilador C2675

«operador» unário : «tipo» não define este operador nem uma conversão para um tipo aceitável para o operador predefinido

Observações

C2675 também pode ocorrer ao usar um operador unário, e o tipo não define o operador ou uma conversão para um tipo aceitável para o operador predefinido. Para usar o operador, você deve sobrecarregá-lo para o tipo especificado ou definir uma conversão para um tipo para o qual o operador está definido.

Exemplo

O exemplo a seguir gera C2675.

// C2675.cpp
struct C {
   C(){}
} c;

struct D {
   D(){}
   void operator-(){}
} d;

int main() {
   -c;   // C2675
   -d;   // OK
}