Error del compilador C2675
'operador' unario: 'tipo' no define este operador o una conversión como tipo aceptable para el operador predefinido
El error C2675 se puede producir también cuando se usa un operador unario y el tipo no define el operador ni una conversión a un tipo aceptable para el operador predefinido. Para usar este operador, debe sobrecargarlo para el tipo especificado o definir una conversión a un tipo para el que esté definido el operador.
Ejemplo
El ejemplo siguiente genera el error C2675.
// C2675.cpp
struct C {
C(){}
} c;
struct D {
D(){}
void operator-(){}
} d;
int main() {
-c; // C2675
-d; // OK
}