bonjour
s'ils vous plait comment pourait je commencer a travaillé avec les listes chainé mais cete fois si avec les classe orienté objet c++.
je sais pas comment commencer le travail![]()
bonjour
s'ils vous plait comment pourait je commencer a travaillé avec les listes chainé mais cete fois si avec les classe orienté objet c++.
je sais pas comment commencer le travail![]()
Bonjour,
pour commencer tu dois te demander ce qu'est unr liste chaînée, ensuite tu te dit quels sont les elements qui compose une liste chaînée et enfin tu pense aux methodes que tu auras besoin pour faire et utiliser ta liste chaîné.
Ensuite nous t'aiguillerons sur la solution du probleme.
Je ne comprend pas bien ce que tu veux dire par là.
Un bon point de départ pour utiliser les listes chainées de la STL (c'est à dire sans doutes celles que presque tout le monde utilise), tu peux commençer par lire le :
chapitre conteneur du mégacours
Euh oui, tous d'abord...
tu dois creer des listes chaînées ou les utiliser dans un exercice quelconque?
Salut,
Si tu ne veux pas utiliser les listes chainées fournies par la STL, il faut travailler à peu pres comme ceci...
une classe de base
une classe pour "la fin de liste"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 class ListeBase { ... };
une classe pour le "début de la liste"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 class ListeQueue: public ListeBase { ... };
une classe pour les éléments de la liste
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 class ListeTete:public ListeBase { ... };
Comme, je présumes que, si tu ne veux pas utiliser la STL, c'est sans doute pour faire un exercice d'école, je vais te laisser réfléchir un peu avant de remplir le contenu des différentes classes
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 class ListeElem:public ListeBase { ... };
Cependant, je peux déjà attirer ton attention sur les fait que:
- ListeBase est une classe abstraite par la force des choses
- ListeQueue sera le "signal de fin" de la liste
- ListeElem sera le noeud qui contient une valeur
- ListeTete sera le "signal de début" de ta liste
- Seul ListeElem contient une valeur utilisable
- Seul ListeElem et ListeTete contiennent un pointeur vers l'élément suivant
- Il n'est pas impossible que certaines classes nécessitent de connaitre d'autres classes à part la classe abstraite...
A méditer: La solution la plus simple est toujours la moins compliquée
Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
Compiler Gcc sous windows avec MinGW
Coder efficacement en C++ : dans les bacs le 17 février 2014
mon tout nouveau blog
Koala, il faudra que tu m'expliques ton design, je ne vois pas ce que viens faire l'héritage au milieu -- à moins qu'il s'agisse d'un exercice de style. Surtout pour identifier le chainon marquant la fin.![]()
Sinon, j'ai plutôt l'impression qu'il cherche std::list<TypeParent*>. Enfin, bon on va encore se perdre en conjecture en attendant d'avoir plus plus de précisions.
Blog|FAQ C++|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS|Bons livres sur le C++
Les MP ne sont pas une hotline. Je ne réponds à aucune question technique par le biais de ce média. Et de toutes façons, ma BAL sur dvpz est pleine...
C'est effectivement un exercice de style pour identifier le chainon marquant la fin...Envoyé par Luc Hermitte
Plutot que d'avoir un test sytématique sur Suivant==NULL (ou Suivant!= NULL), ListeQueue est en mesure de le signaler tout de suite(ce sera d'ailleurs ListeQueue qui s'occupera d'une grande partie de la gestion
)
A méditer: La solution la plus simple est toujours la moins compliquée
Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
Compiler Gcc sous windows avec MinGW
Coder efficacement en C++ : dans les bacs le 17 février 2014
mon tout nouveau blog
C'est sûr, un dynamic_cast (qui renvoit NULL en cas d'échec) c'est tellement plus rapide qu'une comparaison à NULL...Plutot que d'avoir un test sytématique sur Suivant==NULL (ou Suivant!= NULL), ListeQueue est en mesure de le signaler tout de suite (ce sera d'ailleurs ListeQueue qui s'occupera d'une grande partie de la gestion )
Partager