Errore del compilatore C2920
ridefinizione: 'class': modello di classe o generico già dichiarato come 'type'
Un generico o un modello di classe dispone di più dichiarazioni, che non sono equivalenti. Per correggere l'errore, usare un nome diverso per ogni tipo o rimuovere la ridefinizione del nome del tipo.
L'esempio seguente genera l'errore C2920 e mostra come risolverlo:
// C2920.cpp
// compile with: /c
typedef int TC1;
template <class T>
struct TC1 {}; // C2920
struct TC2 {}; // OK - fix by using a different name
C2920 può verificarsi anche quando si usano i generics:
// 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