E2480 Impossible d'impliquer des paramètres de modèle dans les arguments de spécialisation partielle complexe (C++)
Remonter à Erreurs et avertissements du compilateur (C++) - Index
Une spécialisation partielle ne peut pas faire référence à d'autres paramètres de modèle dans une expression d'argument sans valeur, sauf si elle est simplement une référence directe au paramètre de modèle. Par exemple :
template<int A, int B, int C> class foo;
template<int A> class foo<A+5, A, A+10>;
La spécialisation partielle présente deux arguments illégaux. 'A+5' est une expression complexe car elle utilise 'A' d'une façon autre que comme simple argument direct. La référence à 'A' dans le second argument est correcte, mais le troisième argument est aussi illégal car il fait référence à 'A' de façon complexe également.