This is an old revision of the document!
Ajouter à la classe BaseCounter deux nouvelles méthodes virtuelles pures next(), resp. next(unsigned). Ces deux méthodes purement virtuelles ont pour objet d’appeler les méthodes par défaut pour passer à la valeur suivante.
Typiquement, pour un compteur qui compte, ce seront les méthodes increment() et increment(unsigned). Pour un compte qui décompte, ce seront les méthodes decrement() et decrement(unsigned).
Ajouter aux classes ForwardCounter et BackwardCounter, deux nouvelles méthodes next(), resp. next(unsigned). Cette méthode next() (resp. next(unsigned)) appellera la méthode increment(), (resp. increment(unsigned)) pour la classe ForwardCounter. cette méthode next() (resp. next(unsigned)) appellera la méthode decrement(), resp. decrement(unsigned) pour la classe BackwardCounter.
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.next(); incCounter.print(); decCounter.next(); decCounter.print(); } }