User Tools

Site Tools


in204:tds:sujets:td2:part4

This is an old revision of the document!


Partie IV – Redéfinition par masquage

Question n°1

Nous souhaitons redéfinir dans une classe MyAdvCounter qui dérive de la classe MyCounter une nouvelle méthode increment() en remplacement de la méthode actuelle dont le comportement est le suivant :

increment()
    si counter <= max
        counter <- counter + 1
    sinon
        counter = max

Ie. le compteur ne revient pas à zéro et reste à max une fois la valeur max atteinte.

Question n°2

Tester le bon fonctionnement de la méthode à partir du code suivant et vérifier que le comportement est conforme

void testMyAdvCounter()
{
    MyAdvCounter incCounter(0, 4);
    for(int i=0; i < 6; i++)
    {
	  incCounter.increment();
        incCounter.print();
    }
}

Question n°3

Nous créons la fonction suivante :

void testCounter(MyCounter& unCompteur)
{
    for(int i=0; i < 6; i++)
    {
        unCompteur.increment();
        unCompteur.print();
    }
}

Tester la méthode en passant à la fonction testCounter un compteur de type MyCounter et un compteur de type MyAdvCounter. Expliquer le comportement de la fonction pour chacun des types de compteur.

in204/tds/sujets/td2/part4.1569258798.txt.gz · Last modified: 2019/09/23 17:13 by bmonsuez