Formation Nouveautés de C++ 20 et C++ 23

Nouveautés de C++20 et C++23

Cette formation présente les nouvelles fonctionnalités de C++ 20 et 23. Elle détaille les améliorations qui permettent d'écrire rapidement du code plus sûr et plus rapide (modules, concepts, threads, range, formatage…).

Formation Nouveautés de C++ 20 et C++ 23

Objectifs

  • Développer du code de meilleure qualité en utilisant les nouvelles fonctionnalités des versions 20 et 23
  • Savoir utiliser les nouveautés de la bibliothèque standard

Programme

Rappels sur les versions de C++

  • Historique des versions depuis C++11, C++14 et 17
  • Présentation des nouveautés majeures de C++20 (module, concept, range et coroutines)
  • Présentation des nouveautés de C++23

Modules

  • Contraintes de la compilation et du préprocesseur
  • Présentation des modules
  • Implémentation des modules
  • Utilisation
  • Apports de C++23 (import std, …)

Concepts

  • Erreurs de compilation lors d’une mauvaise utilisation de template
  • Présentation de la bibliothèque Concept
  • Création de contraintes

Range Library

  • Présentation
  • Range adapter et generator
  • Enchainement
  • Filter
  • Transform
  • Apports de C++23 (std::ranges::to, …)

Coroutines

  • Programmation asynchrone
  • Présentation des coroutines
  • Générateur
  • Apports de C++23 (std ::generator, …)
  • Exemples d’utilisation

Nouvel opérateur de comparaison

  • Opérateur <=>
  • Opérateur <=> par défaut
  • Impact sur les comparaisons

Améliorations du langage

  • using enum
  • Amélioration des expressions lambda
  • Initialiseurs désignés
  • Extensions de constexpr : consteval et constinit
  • Attributs likely,unlikely,no_unique_address
  • Opérateur d'indice multidimensionnel (C++23)
  • if consteval (C++23)
  • Passage explicite de l’instance en paramètre (deducing this) (C++23)
  • Surcharges statiques de operator() et operator[] (C++23)

Formatage de texte

  • Présentation de la bibliothèque
  • Syntaxe et utilisation de std ::format
  • Syntaxe et utilisation de format_to et format_to_n
  • Apports de C++23 (std::print, std::println, …)
  • Extensions de format

Multithread

  • Rappels sur les threads depuis C++11
  • jthread
  • Sémaphores
  • Latch et Barrier
  • Smart pointeurs atomiques

Autres extensions de la STL

  • Calendriers
  • std::span
  • flat_map et flat_set (C++23)
  • Gestion des erreurs avec std::expected (C++23)
  • Fonctions monadiques de std::optional (C++23)

Télécharger le programme détaillé

En savoir plus

Référence

NouvC++20C++23

Durée

3 jours

Prochaines sessions
Inter Entreprises

Grenoble : 14 - 16 septembre 2026 S'inscrire

Grenoble : 12 - 14 octobre 2026 S'inscrire

Grenoble : 16 - 18 novembre 2026 S'inscrire

Grenoble : 7 - 9 décembre 2026 S'inscrire

Sessions
Intra Entreprise

Des sessions intra-entreprise peuvent être organisées dans vos locaux ou en distanciel. Demander un devis

Pré requis

Connaissance et pratique du C++ 11 ou ultérieur

Public

Développeurs C++ souhaitant améliorer leur code grâce aux nouvelles fonctionnalités de C++ 20 et C++ 23

Points forts

Petit groupe (4 personnes maximum)

Un poste de travail par personne

Formation interactive avec 70 exemples complets, immédiatement compilables en ligne

Formateur très pédagogue, développeur, avec 20 ans d'expérience d'enseignement

Support de formation PDF interactif fourni

Assistance après la formation

Coût

2100 € HT - 2100 € TTC