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.
Les déclarations de type ne sont autorisées qu’à l’étendue globale, d’espace de noms ou de classe
Remarques
Vous ne pouvez pas déclarer une classe générique ou de modèle en dehors de l’étendue globale ou de l’espace de noms. Si vous effectuez vos déclarations génériques ou de modèles dans un fichier include, vérifiez que le fichier include est dans l’étendue globale.
Examples
L’exemple suivant génère l’erreur C2951 :
// C2951.cpp
template <class T>
class A {};
int main() {
template <class T> // C2951
class B {};
}
C2951 peut également se produire lors de l’utilisation de génériques :
// C2951b.cpp
// compile with: /clr /c
// OK
generic <class T>
ref class GC { };
int main() {
generic <class T> ref class GC2 {}; // C2951
}