Condividi tramite


Errore del compilatore C3920

'operator'': impossibile definire un operatore WinRT o CLR di incremento/decremento postfix Chiamando l'operatore WinRT o CLR con prefisso corrispondente, WinRT o CLR (op_Increment/op_Decrement), ma con semantica di postfix

Windows Runtime e CLR non supportano la forma suffissa dell'operatore e non è consentita la forma suffissa degli operatori definiti dall'utente. È possibile definire un forma suffissa dell'operatore e la forma prefissa dell'operatore verrà usata per le operazioni di pre-incremento e post-incremento.

L'esempio seguente genera l'errore C3920 e mostra come risolverlo:

// C3920.cpp
// compile with: /clr /LD
public value struct V {
   static V operator ++(V me, int)
   // try the following line instead
   // static V operator ++(V me)
   {   // C3920
      me.m_i++;
      return me;
   }

   int m_i;
};