Condividi tramite


Errore del compilatore C2801

'operator operator' deve essere un membro non statico

Gli operatori seguenti possono essere sovraccaricati solo come membri non statiche:

  • Incarico =

  • Accesso ai membri della classe ->

  • Pedice []

  • Chiamata di funzione ()

Possibili cause C2801:

  • L'operatore di overload non è una classe, una struttura o un membro dell'unione.

  • L'operatore di overload è dichiarato static.

  • L'esempio seguente genera l'errore C2801:

// C2801.cpp
// compile with: /c
operator[]();   // C2801 not a member
class A {
   static operator->();   // C2801 static
   operator()();   // OK
};