Tableau de pointeurs void*

Résolu
marik7335 Messages postés 115 Date d'inscription samedi 27 décembre 2003 Statut Membre Dernière intervention 11 mai 2009 - 14 juin 2005 à 19:25
xboxut Messages postés 172 Date d'inscription jeudi 4 mars 2004 Statut Membre Dernière intervention 27 novembre 2009 - 14 juin 2005 à 19:58
Bonjour à tous,



j'ai un problème à vous soummettre.

Je souhaite gérer des postes de travail et des postes de formations au sein d'une classe collection lespostes.

Dans une classe lespostes je déclare un tableau de pointeur de cette façon void* TabPostes[100];



Je déclare une classe poste et une classe posteFormation qui hérite de poste.



Grace à la méthode surchargée AjouterUnPoste(poste *unposte); (
AjouterUnPoste(posteFormation *unposte); ), je stocke toutes les
adresses mémoires des postes et postes de formation dans le tableau
TabPostes.



Au moment de la lecture de ce tableau je ne sais pas comment je peux
savoir si j'ai à faire à un objet poste ou un objet posteFormation. Et
pourtant j'essai d' utiliser l'opérateur cast du c et du c++.



Si vous avez une solution à me soumettre, merci de m'en faire part.



Marik7335

3 réponses

vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
14 juin 2005 à 19:57
Solution plutot sale fournie par xboxut (on dirait du polymorphisme à
la C). Il faut que tu utilises le polymorphisme (les fonctions
virtuelles). A quel moment à tu besoin de savoir de quel type il
s'agit? Ce traitement doit correpondre à une méthode virtuelle.

Et évidemment, plutot qu'un tableau de void* tu fais un tableau de ClasseDeBase*

Car bien sur tu peux écrire ClasseDeBase* b = new ClasseFille();
3
xboxut Messages postés 172 Date d'inscription jeudi 4 mars 2004 Statut Membre Dernière intervention 27 novembre 2009 1
14 juin 2005 à 19:42
tu met dans ta classe mere une variable qui servira a reperer les 2 classe.puis a moment de leur construction via le constucteur bin tu leur assigne 2 valeur differente comme ca pour trouver si un objet est la classe mere ou fille tu test la var
0
xboxut Messages postés 172 Date d'inscription jeudi 4 mars 2004 Statut Membre Dernière intervention 27 novembre 2009 1
14 juin 2005 à 19:58
merci c ma marque de fabrique ;)
0
Rejoignez-nous