Sdílet prostřednictvím


Chyba kompilátoru C2989

'class' : Typ třídy již byl deklarován jako typ, který není třída.

Poznámky

Obecná třída nebo šablona předefinuje třídu, která není šablona nebo ne generická. Zkontrolujte konflikty v souborech hlaviček.

Examples

Následující příklad vygeneruje C2989:

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

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

K C2989 může také dojít při použití obecných typů:

// 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;