Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier les répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer de répertoire.
'class' : type-class-id redéfini comme argument formel d’une fonction
Remarques
Vous ne pouvez pas utiliser une classe générique ou modèle comme argument formel. Vous ne pouvez pas passer un argument directement au constructeur d’une classe générique ou de modèle.
Cette erreur est obsolète dans Visual Studio 2022 et versions ultérieures.
Examples
L’exemple suivant génère l’erreur C2942 :
// C2942.cpp
// compile with: /c
template<class T>
struct TC {};
void f(int TC<int>) {} // C2942
// OK
struct TC2 {};
void f(TC2 i) {}
L’erreur C2942 peut également se produire lors de l’utilisation de génériques :
// C2942b.cpp
// compile with: /clr /c
generic<class T>
ref struct GC {};
void f(int GC<int>) {} // C2942
ref struct GC2 { };
void f(int GC2) {}