table des matières
  1. Classes : Constructeur, destructeur, getter et setter
  2. Introduction aux tests unitaires
  3. Relation de composition entre classes
  4. Surcharge des opérateurs d’une classe
  5. Constructeur de recopie
  6. Relation d’agrégation entre classes
  7. Le conteneur
    1. Exercice 1
    2. Exercice 2 - Une liste de lampe
  8. Relation d’héritage entre classes
  9. Template en C++
    1. Exercice 1
    2. Exercices suivants
  10. Gestion des Exceptions en C++
  11. Pointeurs en C++

Vous trouverez sur cette page des exercices couvrant les concepts de programmation objets, mis en oeuvre en C++.

Les projets sont réalisés sous QtCreator avec CMake.

Pour chacun des projets :

  • un lien vers un dépôt git est fourni
  • Le wiki du dépôt propose une série d’exercices pour maîtriser les notions abordées

Classes : Constructeur, destructeur, getter et setter

Ce cahier d’exercice expose les concepts de Constructeur, de Destructeur, de Getter et de Setter au travers de l’exemple d’une lampe.

Dépôt Git - La lampe

Cahier d’exercices

Introduction aux tests unitaires

Toujours avec l’exemple de la lampe, je vous propose une introduction aux tests unitaires.
Les tests unitaires ne sont pas réservées au C++ mais adaptables à tout projet de programmation.
Nous utilisons Catch2 comme framework pour les tests unitaires.

Cahier d’exercices Tests unitaires

Relation de composition entre classes

Ce cahier d’exercice expose la première relation entre des classes, la composition.

Dépôt Git - Le Vélo

Cahier d’exercices

Surcharge des opérateurs d’une classe

Ce cahier d’exercice expose et met en oeuvre la surcharge des opérateurs en C++

Dépôt Git - Fraction

Cahier d’exercices

Constructeur de recopie

Vous utiliserez votre programme sur la gestion des usages d’un parking pour découvrir le rôle et l’usage d’un constructeur de recopie.

Cahier d’exercices

Relation d’agrégation entre classes

Ce cahier d’exercice expose le deuxième type de relation entre des classes, l’agrégation.

Dépôt Git - Agrégation entre classes

Cahier d’exercices

Le conteneur

Ce cahier d’exercices vous fait découvrir le rôle des conteneurs C++.

La mise en oeuvre utilise le conteneur de la [STL](https://fr.wikipedia.org/wiki/Standard_Template_Library)

Documentation de l’API vector

Exercice 1

  • Programmer l’exercice proposé Manuel C++ page 47 Paragraphe 3.4

Exercice 2 - Une liste de lampe

Dépôt Git - liste de lampe

Cahier d’exercices

Relation d’héritage entre classes

Ce cahier d’exercice expose le troisième type de relation entre des classes, l’héritage.

Dépôt Git - Héritage entre classes

Cahier d’exercices

Template en C++

Ce cahier d’exercice vous fait découvrir la notion de Template en C++, leur utilisation et implémentation.

Exercice 1

  • Programmer l’exercice (Manuel C++ page 47 Paragraphe 3.4) en créant un vector d’entiers (et non de réel)
  1. Que signifie les < > après la déclaration de vector ?

Exercices suivants

Dépôt Git - Template

Cahier d’exercices

Gestion des Exceptions en C++

Ce cahier d’exercice vous fait découvrir la notion d’Exception en C++, son utilisation et implémentation.

Dépôt Git - Exception

Cahier d’exercices

Pointeurs en C++

Ce cahier d’exercices synthétise l’utilisation des pointeurs en C++ !

Dépôt Git - Pointeurs

Cahier d’exercices