Bonjour,
Voila mon souci :
J'ai une classe cBoite, une classe cCube, et d'autres qui derivent toutes de la classe cObjet.
J'ai une classe cConteneur qui derive elle aussi de cObjet.
La classe cConteneur a comme membre une liste des objets qu'elle contient :
Jusqu'ici tout va bien....
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
8
9
10
Seulement, certains de mes conteneurs (qui derivent de la classe cConteneur) ne sont prevus pour ne contenir que des cubes (par exemple)
Je souhaiterais donc :
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
- que la liste d'objets devienne une liste de cubes : std::list<cCube*> m_listeObjets
- eviter de re-coder les méthodes "afficherObjets", "trierObjets".... qui parcourent la liste d'objets avec des itérateurs
Quelle serait la méthode la plus simple/la plus propre ?
Avec des templates ?
J'ai jamais codé de template, quels sont les pièges à eviter ?
Merci !
EDIT :
Pour preciser ma pensée, voila comment je vois les choses :
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
8
9
10
11
12
13
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7

 

 
		
		 
         
 

 
			
			



 
			 
   
 


 [STL] std::list de classe et de ses derivées
 [STL] std::list de classe et de ses derivées
				 Répondre avec citation
  Répondre avec citation
Partager