Déduction partielle d'arguments de modèle de classe en C 17 : une fonctionnalité future potentielle
En C 17, la déduction d'arguments de modèle de classe (CTAD) permet de compilateur pour déduire des arguments de modèle en fonction du type déduit d'une variable ou d'une expression. Cependant, CTAD exige actuellement que tous les arguments du modèle soient spécifiés ou que tous soient déduits.
Cela soulève la question : est-il possible de spécifier partiellement les arguments du modèle et de faire en sorte que les autres soient déduits ?
Malgré les tentatives comme l'utilisation de modèles d'alias, la déduction partielle directe n'est toujours pas disponible. Cependant, un article proposé (P1814) est à l'étude pour C 20 qui cherche à permettre la prise en charge de la CTAD partielle à l'aide de modèles d'alias.
Jusqu'à ce qu'une telle proposition soit acceptée, il n'existe aucune solution de contournement prise en charge pour la mise en œuvre de la déduction partielle. Cependant, le prochain projet de norme C 20 inclut la prise en charge des modèles d'alias (P1814) et des agrégats (P1816), répondant ainsi à certaines des limites de CTAD.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!