Teilen über


Compilerfehler C2989

'Klasse': Klassentyp wurde bereits als Nicht-Klassentyp deklariert.

Bemerkungen

Die Klasse "generic" oder "template" definiert eine Nicht-Vorlage oder eine nicht generische Klasse neu. Überprüfen Sie Kopfzeilendateien auf Konflikte.

Examples

Im folgenden Beispiel wird C2989 generiert:

// C2989.cpp
// compile with: /c
class C{};

template <class T>
class C{};  // C2989
class C2{};

C2989 kann auch bei Verwendung von Generika auftreten:

// C2989b.cpp
// compile with: /clr /c
ref class GC1;

generic <typename T> ref class GC1;   // C2989
template <typename T> ref class GC2;

generic <typename T> ref class GC2;   // C2989
generic <typename T> ref class GCb;
template <typename T> ref class GC2;
generic <typename T> ref class GCc;