Fonctionnalités C 17 dans les compilateurs C 1z
C 17 est désormais doté de fonctionnalités complètes et les compilateurs prenant en charge "C 1z" implémenteront la plupart des fonctionnalités ajoutées dans C 17. Certaines des fonctionnalités clés qui seront disponibles dans les compilateurs C 1z inclure :
Caractéristiques du langage :
- Déduction d'arguments de modèle pour les modèles de classe
- modèle
- Non -type arguments du modèle correctifs
- templatetypename bob> struct foo {}
- ( Pliage d'expressions...) avec révisions
- auto x{8} ; est un int
- Modernisation en utilisant avec ... et des listes
Lambda :
- Constexpr lambdas
- Capturer *ceci dans lambdas
Attributs :
- [[fallthrough]], [[nodiscard]], [[maybe_unused]] attributs
- [[attributs]] sur les espaces de noms et énumérateurs
Nettoyage de la syntaxe :
- Variables en ligne
- Nettoyeur multi-retours et contrôle de flux avec liaisons structurées et if (init ; condition) syntaxe
Données Types :
- std::variant
- std::facultatif
- std::any
- std::string_view
Invoquer Trucs :
- std::invoke
- std::apply
- std::make_from_tuple
- is_invocable, is_invocable_r et Invoquer_result
Système de fichiers TS v1 :
- Classes et fonctions liées aux E/S de fichiers
Algorithmes :
- De nouveaux algorithmes tels que for_each_n, réduire et transformer_reduce
Threading :
Principes fondamentaux de la bibliothèque TS v1 :
- Algorithmes et techniques de recherche
- Allocateur polymorphe (std::pmr)
- Améliorations du conteneur, y compris l'épissage et std::size non membre
Intelligent Pointeurs :
Autres changements :
- La bibliothèque C 17 est basée sur C11 au lieu de C99
- Mathématiques spéciales fonctions
- std::clamp
- std::void_t
Remarque : Veuillez consulter la documentation du compilateur pour la liste exacte des fonctionnalités C 17 prises en charge par votre compilateur spécifique.
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!
Déclaration:Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn