Udostępnij za pomocą


Błąd kompilatora C3366

"zmienna": statyczne składowe danych zarządzanych lub WinRTtypes muszą być zdefiniowane w definicji klasy

Uwagi

Podjęto próbę odwołania się do statycznej składowej klasy WinRT lub .NET lub interfejsu poza definicją tej klasy lub interfejsu.

Kompilator musi znać pełną definicję klasy (aby emitować metadane po jednym przekazaniu) i wymaga zainicjowania statycznych składowych danych w klasie.

Example

Na przykład poniższy przykład generuje kod C3366 i pokazuje, jak go naprawić:

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

int X::i = 5;      // C3366