La version 17 de la norme C++ s’annonçait significative, elle aura finalement été plus modeste sans pour autant être négligeable, certaines choses significatives n’étant pas prêtes à temps ont été reportées à C++20, qui sera une version plutôt majeure.
C++17 commence à être disponible dans nos environnements de développement, mais pas toujours en totalité. Par exemple, la plupart des évolutions du langage sont disponibles depuis GCC 7, ce n’est plus considéré comme expérimental que depuis la version 9 de GCC, sortie en mai 2019 et qui commence à être disponible dans nos distributions. Certains ajouts dans la STL arrivent parfois plus tardivement.
1. Évolutions du langage
Les évolutions du langage C++ sont en fait constituées de 2 parties. La première partie concerne la syntaxe du langage. Ceci couvre les mots-clés et les notations possibles (c’est l’objet de ce premier paragraphe). La seconde partie couvre la librairie standard (c’est l’objet du paragraphe suivant).
1.1 Structured Binding Declarations
Les déclarations liées structurées qui ont failli s’appeler « décomposition de variables structurées » sont un mécanisme qui permet de décomposer une variable agrégée en plusieurs...
- Accédez à tous les contenus de Connect en illimité
- Découvrez des listes de lecture et des contenus Premium
- Consultez les nouveaux articles en avant-première