Sdílet prostřednictvím


Chyba kompilátoru C2920

předefinování: 'třída': šablona třídy nebo generický už byl deklarován jako 'typ'

Poznámky

Obecná třída nebo třída šablony má více deklarací, které nejsou ekvivalentní. Chcete-li tuto chybu opravit, použijte různé názvy pro různé typy nebo odeberte předefinování názvu typu.

Examples

Následující příklad vygeneruje C2920 a ukazuje, jak ho opravit:

// C2920.cpp
// compile with: /c
typedef int TC1;
template <class T>
struct TC1 {};   // C2920
struct TC2 {};   // OK - fix by using a different name

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

// C2920b.cpp
// compile with: /clr /c
typedef int GC1;
generic <class T>
ref struct GC1 {};   // C2920
ref struct GC2 {};   // OK - fix by using a different name