Condividi tramite


Errore del compilatore C2675

unaria 'operator': 'type' non definisce questo operatore o una conversione in un tipo accettabile per l'operatore predefinito

Osservazioni:

C2675 può verificarsi anche quando si usa un operatore unario e il tipo non definisce l'operatore o una conversione in un tipo accettabile per l'operatore predefinito. Per usare l'operatore, è necessario eseguirne l'overload per il tipo specificato o definire una conversione in un tipo per cui l'operatore è definito.

Esempio

L'esempio seguente genera l'errore C2675.

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

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

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