Durée : 3 jours - 21 heures
Tarif : Nous contacter pour une formation INTER – INTRA ou en COURS PARTICULIER
La formation est délivrée en présentiel ou distanciel (e-learning, classe virtuelle, présentiel et à distance). Le formateur alterne entre méthodes démonstrative, interrogative et active (via des travaux pratiques et/ou des mises en situation). La validation des acquis peut se faire via des études de cas, des quiz et/ou une certification.
Cette formation est animée par un consultant-formateur dont les compétences techniques, professionnelles et pédagogiques ont été validées par des diplômes et/ou testées et approuvées par l’éditeur et/ou par Audit Conseil Formation.
Bonnes connaissances du langage C++. Une expérience pratique de la programmation avec ce langage est recommandée.
- Evaluation des besoins et objectifs en pré et post formation
- Evaluation technique des connaissances en pré et post formation
- Evaluation générale du stage
Les différentes normes C++98, C++03, C++11=, C++14, C++17, C++20.
Les nouveautés de C++11 et les objectifs de cette norme. Le devenir de Boost, STL.
La question de la compatibilité des codes anciens.
La disponibilité des outils de développement (compilateurs, débogueurs, IDE...).
Les enum fortement typées.
Le mot-clé auto et decltype pour simplifier le typage.
La boucle basée sur un intervalle.
Constexpr pour une évaluation à la compilation.
Templates variadiques, concepts de C++20 soucoupe...
Coroutines de C++20.
Les modules de C++20.
La délégation de constructeurs, les contraintes liées à l'héritage.
La nouvelle sémantique du déplacement et le constructeur par déplacement (move constructor).
Les directives override, final =delete, =default.
Notion de module C++20
Déclaration, typage, implémentation et utilisation.
L'intérêt d'auto avec les lambda-expressions.
La gestion des fermetures (closures), avec capture par valeur ou par référence des variables liées au contexte.
Déclaration et exécution d'un thread. Attente de fin d'exécution avec join().
La gestion des données locales à un thread.
Récupérer un résultat avec future<> et async().
Choisir parmi les différents verrous de la STL.
Ranges avec std ::view pour évaluations à la volée de C++20.
La gestion du temps avec le namespace chrono.
Le nouveau conteneur tuple.
Conteneurs unordered_set, unordered_map à base de hachage.
Formatage de string avec C++20.
Les smart pointers : shared_ptr, weak_ptr, unique_ptr. Usage conjoint avec la STL.