Découvrir C++11.
- Normes du C++
- C++11 : apports, options de compilation
- Rétro-compatibilité du code
Atelier : Mise en place de l'environnement de développement.
Appliquer les évolutions du langage.
- Types et opérateurs
- Tableaux, énumérations
- Paramètres template étendus pour les templates template variadic
- Espaces de noms inline (association d'espaces de noms)
- Propagation des exceptions
- Namespace chrono
Atelier : Mise en oeuvre des améliorations du langage.
Programmer en objet avec C++11.
- Constructeurs délégués et contraintes liées à l'héritage
- Constructeur par déplacement (move constructor)
- Littérales définies par l'utilisateur
- Déclarations étendues de l'amitié
- Surcharges explicites de la virtualité
- Gestion de la mémoire : smart pointes
- Pointeurs et conteneurs (STL)
Atelier : Création et manipulation d'objets en C++11
Gérer la concurrence.
- Création de threads, exécution
- Gestion des données, résultat
- Capacités d'exécution d'une plateforme - hardware_concurrency()
Atelier : Usage du multithreading et mesure des bénéfices.
Utiliser les lambda-expressions.
- Quid de la programmation fonctionnelle
- Implémentation d'expressions lambda
- Gestion des closures
Atelier : Multiples scénarios d'utilisation des lambda expressions.