Langage C++ avancé
Cette formation complète les connaissances de base du langage C++ en décrivant ses spécifités telles ques les templates, la STL, les exceptions...
Durée
.
Publics cibles
Développeurs, Chefs de projets, Consultant
Pré-requis
Bases du C++
Objectifs
Cette formation, vous permettra de compléter vos connaissances en langage C par une formation approfondie sur les mécanismes fondamentaux de fonctionnement.
Informations
Cette formation est accessible en présentiel et à distance (classe virtuelle)
Programme détaillé
Rappels sur le C++
- Typage
- Héritage
- Polymorphisme
- Compilation modulaire
- Constructeur
- Constructeur de copie
- Forme canonique
- Destructeur
- Surcharge d’opérateur
- Références et pointeurs
- Pointeurs de pointeurs
- Pièges liés à l’utilisation de pointeurs
- Initialisation des pointeurs
- Compilation
- Allocation de mémoire dynamique
Les templates
- Présentation
- Notion de patron de classes
- Standard Template Library
- Container séquentiel
- Container associatif
- Créer des templates
- Hiérarchie des templates:Utiliser des templates
- Intégration
Les espaces de noms
- Définition
- Portée (scope)
- Les espaces de noms anonymes
- Résolution d’espace de noms
- Accès aux namespaces
- Gestion avancée des opérateurs
- Conversion
- Affectation
- Copies
Les exceptions
- Traitement des erreurs
- throw
- try catch
- terminate
- Les variantes de catch
- Exceptions dans les effaceurs
- Récupérer les exceptions
- Transmettre les exceptions
La bibliothèque standard de modèles
- Présentation
- Standard Template Library
- Sécurité des exceptions
- Les containers
- Les itérateurs
- Algorithmie fonctionnelle
Concepts avancés
- Réécriture des opérateurs
- Allocation dynamique de la mémoire
- Gestion avancée de la mémoire
- Libération mémoire
- Débordements de tableaux
- Les Smart pointers
- Conversion de types
- Les friends
- Les mutable
- auto_ptr
- La classe string
- Dépannage en C++
- MSDEV
- Gérer les fuites mémoires
- Règles de programmation en C++