Introduction à C++
- Philosophie du langage C++
- Origine et positionnement
Ajouts du langage C++ / C
- Typage, allocation dynamique
Modèle des classes C++
- Définition du modèle des classes C++
- Instanciation des objets
- Méthodes, constructeurs et destructeurs
- Règles de programmation C++
- Modularité C++, lisibilité, évolutivité, robustesse
- Les espaces de nommage : namespace
Spécificités des classes C++
- Friends, opérateurs, conversion de types
- Surcharges, objets imbriqués
Héritage
- Définition et propriétés
- Héritage simple et multiple
- Règles d'utilisation, mécanismes
- Méthodes virtuelles
|
Généricité
- Templates : mode d'emploi
- Bibliothèques C++
Allocation mémoire
- Fonctionnement interne
- Redéfinition des opérateurs new et delete : optimisation, communication, gestion des tableaux
RTTI
- Opérateur type id
- Classe type_info
- Le casting dynamique
- Sérialisation d’objets
Exceptions
- Gestion des exceptions : catch et throw
- Stratégie de mise en œuvre des exceptions et bonnes pratiques
STL (Standard Template Library
- Définition et propriétés
- Les Containers (lists, vectors ...)
- Les Iterators
- Algorithmique avec les templates STL
Design Patterns
- Stratégies de construction d'objets, structuration d'objets, adaptation des comportements
Mini-projet : application des concepts objet avec C++
|