Condividi tramite


Errore del compilatore C3366

'variable': i membri dati statici di tipi gestiti o WinRTtype devono essere definiti all'interno della definizione della classe

Osservazioni:

Si è tentato di fare riferimento a un membro statico di una classe o un'interfaccia WinRT o .NET al di fuori della definizione di tale classe o interfaccia.

Il compilatore deve conoscere la definizione completa della classe (per creare i metadati dopo un solo passaggio) ed è necessario che i membri dati statici vengano inizializzati all'interno della classe.

Example

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

// C3366.cpp
// compile with: /clr /c
ref class X {
   public:
   static int i;   // initialize i here to avoid C3366
};

int X::i = 5;      // C3366