E2386 Impossible d'impliquer le paramètre 'paramètre' dans une expression de spécialisation partielle complexe (C++)

De RAD Studio
Aller à : navigation, rechercher

Remonter à Erreurs et avertissements du compilateur (C++) - Index

Lors de la déclaration ou de la définition d'une spécialisation partielle de classe modèle, il est incorrect d'impliquer des paramètres qui ne sont pas de type template dans des expressions complexes. Ils ne peuvent être référencés que par nom. Par exemple :

template<class T, int U>
class foo;
template<int U>
class foo<char, U * 3>;// erreur : "U * 3" est une expression complexe
template<int U>
class foo<char, U>;// OK : "U" est une expression simple, référencée par le nom