Formation Nouveautés de C++ 11, 14 et 17

C++ moderne : versions 11, 14 et 17

Cette formation présente les nouvelles fonctionnalités de C++ 11, 14 et 17.

Elle couvre les nombreuses modifications qui permettent d'écrire rapidement du code plus sûr et plus rapide, comme, par exemple, le constructeur move, l'utilisation des Rvalues, les templates variadiques et les nouveaux smart-pointers.

Elle s'adresse à des développeurs utilisant déjà le C++.

Formation Nouveautés de C++ 11, 14 et 17

Objectifs

  • Développer du code de meilleure qualité en utilisant les nouvelles fonctionnalités des versions 11, 14 et 17
  • Savoir utiliser les nouveautés des versions 11, 14 et 17 de la bibliothèque standard du C++.

Programme

Introduction aux versions récentes de C++

  • C++ 0x
  • TR1
  • Boost
  • C++11,C++14 et 17
  • Éléments obsolètes ou redéfinis (auto, register, auto_ptr, …)
  • Le futur avec C++20

Nouvelles fonctionnalités du langage

  • Pointeur null : nullptr
  • Énumérations typées
  • Listes d’initialisation
  • Chevrons
  • Parcours d’un conteneur
  • Fonctions constantes à la compilation
  • Propagation des exceptions
  • Syntaxe if et switch (C++ 17)
  • Évaluation des expressions (C++ 17
  • Espace de nom inline et nested (C++ 17)

Typage par inférence

  • auto, decltype
  • Syntaxe de définition d’une fonction
  • Strutured binding

Fonctions

  • Support des fonctions dans la STL : std::function, std::bind,
  • Définition d’une fonction anonyme
  • Définition d’une fermeture

Rvalue

  • Définition d’une Rvalue
  • Constructeur move
  • Opérateur d’affection
  • std:move

Classes

  • Initialisation de variables
  • Appels de constructeurs
  • Spécifications des constructeurs par défaut (delete, default)
  • Héritage des constructeurs
  • Blocage de l’héritage

Multithreading

  • Présentation
  • Attribut thread_local
  • Classe thread
  • Classe mutex
  • Conditions, Verrous, future et promise

Template

  • Rappels sur les templates de classes et de fonctions
  • Définition externe
  • Template variadiques
  • Définition de types partiels
  • Inférence de type (C++ 17)

Smart Pointers

  • Dépréciation de auto_ptr
  • unique_ptr
  • shared_ptr
  • weak_ptr

Nouvelles bibliothèques de la librairie standard

  • regex
  • chrono
  • Fonctions mathématiques
  • Opération atomiques
  • Filesystem (C++17)
  • Parallelism (C++17)
  • nouveaux algorithmes (C++17)

Nouveaux conteneurs de la librairie standard

  • array
  • tuple - pair
  • unordered_map, unordered_set, unordered_multimap, unordered_multiset
  • variant, any (C++17)

Télécharger le programme détaillé

En savoir plus

Référence

MOD-C++

Durée

3 jours

Prochaines sessions

13 - 15 mai 2024 S'inscrire

3 – 5 juin 2024 S'inscrire

1 – 3 juillet 2024 S'inscrire

Pré requis

Connaissance et pratique du C++ (syntaxe de base, programmation orientée objet)

Public

Développeurs, Chef de projet

Points forts

Petit groupe (4 personnes maximum)

Un poste de travail par personne

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

50 % d'exercices pratiques

Support de cours fourni

Assistance après la formation

Coût

3500 € HT