wismerhill__
Messages postés88Date d'inscriptionmercredi 1 juin 2005StatutMembreDernière intervention26 juillet 2007
-
13 juil. 2006 à 11:30
steve_clamage
Messages postés475Date d'inscriptiondimanche 3 octobre 2004StatutMembreDernière intervention11 août 2006
-
13 juil. 2006 à 19:53
Bonjour, j'ai un probleme que je pense etre simple mais bon ...
J'ai une classe A dont un attribut est actuelement un std::vector<*B>
Une classe B mere de C et D classique attribut v2
Une classe C fille de B attribut v3
Une classe D fille de B attribut v4
un element de B est toujours un element de C ou D
mon probleme est qu'en fait je dois pouvoir acceder à v3 et v4 dans une fonction de la classe A, et je ne sais pas comment dire à C++ que le std::vector<*X> dois etre *B ou *C
Sachant que je veux evidement pouvoir acceder aussi à v2 mais j'immagine que si je peux acceder aux filles la mere viendra facilement :)
Ce ne serait pas ca un template ???
????Quel est le code que je dois mettre pour dire que mon std::vector<*X>????
wismerhill__
Messages postés88Date d'inscriptionmercredi 1 juin 2005StatutMembreDernière intervention26 juillet 2007 13 juil. 2006 à 12:19
merci de ta reponse turnerom, mais cela demande encore d'avoir un test pour savoir si je susi dans C ou D,
en même temps je peux comprendre qu'il ne soit pas possible de faire un pointeur, qui apres tout pointeur sur une union de classe (c'est a peu pres ce que je lui demande ...)
wismerhill__
Messages postés88Date d'inscriptionmercredi 1 juin 2005StatutMembreDernière intervention26 juillet 2007 13 juil. 2006 à 12:15
Excusez moi, j'ai trouvé la réponse, enfin une feinte qui consiste à dynamic_cast er mon pointeur.
Mais bon ce serait mieux si effectivement je pouvais mettre un pointeur sur n'importe quelle classe (et donc acceder aux methodes de ces classes)