Teilen über


Compilerfehler C2936

'class' : type-class-id neu definiert als globale Datenvariable

Bemerkungen

Sie können keine generische oder Vorlagenklasse als globale Datenvariable verwenden.

Dieser Fehler ist in Visual Studio 2022 und höheren Versionen veraltet.

Dieser Fehler kann dadurch verursacht werden, dass geschweifte Klammern nicht korrekt übereinstimmen.

Examples

Im folgenden Beispiel wird C2936 generiert:

// C2936.cpp
// compile with: /c
template<class T> struct TC { };
int TC<int>;   // C2936

// OK
struct TC2 { };
int TC2;

C2936 kann auch auftreten, wenn Generics verwendet werden:

// C2936b.cpp
// compile with: /clr /c
generic<class T>
ref struct GC {};
int GC<int>;   // C2936

// OK
ref struct GC2 {};
int GC2;