User Tools

Site Tools


in202:seance_2:td_2:part_ii

Arbres de dérivation

Question n°1

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

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

  • Le compteur ForwardCounter qui compte de 0 à max et repars à 0.
  • Le compteur BackwardCounter qui compte max à 9 et repars à max.

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++

in202/seance_2/td_2/part_ii.txt · Last modified: 2022/11/18 10:45 (external edit)