J'ai crée un programme qui fait des opérations sur une liste chainée
Pour le moment, les cellules de ma liste chainée ne contiennent que des valeurs entieres.
Pour améliorer mon programme, j'essaye d'utiliser des templates afin de ne pas être limité qu'aux seules valeurs entières;
Code :
- template <class TElement> class Cellule {
- public :
- Cellule *precedent;
- Cellule *suivant;
- TElement valeur;
- Cellule(TElement t , Cellule *p , Cellule *s);
- }
|
J'utilise une classe Iterateur qui a comme parametre une Cellule.
Code :
- //Une instance de la classe iterateur va pointer sur une des cellules de la liste chainee
- class Iterateur {
- public :
- //bug a ce niveau : on me demande le type de la cellule
- Cellule *celluleCourante;
-
- Iterateur(Cellule *c);
- //pointer vers la cellule suivante de la liste
- void avancer();
- //pointer vers la cellule precedente de la liste
- void reculer();
- }
|
Le probleme est que dans ma classe itérateur, on me demande à présent le type de la Cellule, hors je ne peux le connaitre à ce stade
Comment puis-je donc procéder ?
Merci