Table of Contents

Arbres de dérivation

TD complet

Question n°1

La classe MyBiDiCounter ajoute la fonction decrement à la classe MyCounter.

En fait, nous pouvons définir une famille de compteur :

Question n°1.1

Faites la liste des méthodes, champs pouvant être partagés et la liste des méthodes et champs propres à chacune des classes.

Question n°1.2

Implanter la classe BaseCounter. On s’inspirera fortement de la classe MyCounter déjà définie.

Question n°1.3

Implanter les classes ForwardCounter, BackwardCounter qui héritent chacune de la classe BaseCounter.

Question n°2

Tester le comportement de vos compteurs à partir du code suivant

void testFamilyOfCounters()
{
    ForwardCounter incCounter(0, 4);
    BackwardCounter decCounter(0, 3);
    for(int i=0; i < 6; i++)
    {
        incCounter.increment();
        incCounter.print();
	decCounter.decrement();
        decCounter.print();
    }
}

Ressources

Code présenté pendant le cours

''part2.cpp'' Fichier principal contient les fonctions de test et le main.

''BaseCounter.hpp'' Définition de la classe de base BaseCounter.

''ForwardCounter.hpp'' Définition des classes ForwardCounter et BackwardCounter.

Liens vers les éléments syntaxiques C++

Héritage & Dérivation de classe

Contructeurs dans les classes dérivées

Méthodes dans les classe dérivées

Première Partie Troisième Partie