Jeu de crochet pointu

La première parenthèse ouvrante fois le modèle est interprétée dans le cadre de la liste d'arguments du modèle, et non comme opérateur supérieur à.Le premier > après le signe inférieur à est interprétée comme fin de la liste d'arguments du modèle, à moins qu'il soit placé entre crochets, fait partie d'un modèle imbriqué, ou fait partie d'une expression de cast de style du modèle telle qu' static_cast<int>.

Le mauvais positionnement des crochets (<>) entraîne de nombreuses erreurs de syntaxe de modèle.Assurez -vous que vous utilisez l'espacement appropriée et des parenthèses pour distinguer les crochets des opérateurs tels qu' >, >> et - >.Par exemple :

TempClass< float, a > b ? a : b > test1;

doit être réécrit comme suit :

TempClass< float, (a > b ? a : b) > test1;

De même, une attention spéciale salaire lors de l'utilisation des macros qui utilisent des crochets comme arguments template.

Voir aussi

Autres ressources

Modèles