Le standard C++20 apporte des changements majeurs au langage : modules pour remplacer les includes, concepts pour contraindre les templates, coroutines pour la programmation asynchrone et la bibliothèque Ranges pour un code plus expressif. Cette formation de mise à niveau permet aux développeurs C++ expérimentés d’adopter ces nouveautés et de moderniser leur base de code existante.
Public visé
Développeurs C++.
Prérequis
Avoir suivi cette formation, ou en maîtriser les thèmes abordés :
Objectifs pédagogiques
À l’issue de cette formation, vous serez capable de :
- Identifier les nouveautés de la version 20 de C++
Programme
Jour 1
Principe de normalisation
- Rappel des versions
- Normalisation C++
Correctifs et éléments obsolètes
- Les éléments retirés du langage
- Les éléments dépréciés
Jour 2
Les améliorations du langage
- Tester la présence de fonctionnalités (macros préprocesseur)
- L’opérateur “three-way comparison”
- Suspendre l’exécution de fonctions avec les “coroutines”
- Organiser son code avec les modules
- Amélioration des lambdas
- Nouveaux attributs et spécificateurs
- Gestion de la mémoire et optimisations
Les templates
- Spécifier des conditions sur les templates avec les “constraints”
- Nommer ces conditions : les “concepts”
- Les fonctions templates abrégées
Jour 3
La bibliothèque standard
- Formater des chaînes (std::format, std::format_to,…)
- Les nouveautés de “Calendar” et “Time zone”
- La bibliothèque “Ranges”
Travaux pratiques
- Développement d’une application utilisant l’API open source Simbody écrite pour C20
- Etudier la migration d’une application C++ en C++ moderne
- Adapter les exemples de Design Pattern en utilisant des pointeurs managés
- Transcodage avec lecture de fichier synchrone puis asynchrone
Modalités d’évaluation des acquis
En cours de formation, par des études de cas ou des travaux pratiques. En fin de formation, par un questionnaire d’auto-évaluation.
Voir aussi
Vous serez peut-être intéressés par les formations suivantes :
- C++ - Initiation
- C++ - Librairie QT - Initiation
- C++ - Librairie QT - Avancé
- C++ Qt6 - Perfectionnement
Formation DEV-CPP-200 — C++ - Avancé. Domaine : Développement. Niveau : Intermédiaire. Durée : 3 jours (21 heures). Mots-clés : c++, développement, avancé, c++20. Cylian Formation, Dijon.