Udostępnij za pomocą


Błąd kompilatora C2936

"class" : type-class-id redefined jako globalna zmienna danych

Uwagi

Nie można użyć klasy ogólnej ani szablonu jako globalnej zmiennej danych.

Ten błąd jest przestarzały w programie Visual Studio 2022 i nowszych wersjach.

Ten błąd może być spowodowany nieprawidłowym dopasowaniem nawiasów klamrowych.

Przykłady

Poniższy przykład generuje kod C2936:

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

// OK
struct TC2 { };
int TC2;

C2936 może również wystąpić w przypadku używania typów ogólnych:

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

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