Partager via


Erreur du compilateur C2989

'class' : le type de classe a déjà été déclaré en tant que type non classe

La classe générique ou modèle redéfinit une classe non-modèle ou non générique. Vérifiez les fichiers d’en-tête pour les conflits.

L’exemple suivant génère l’erreur C2989 :

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

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

C2989 peut également se produire lors de l’utilisation de génériques :

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