Bonjour,
Je ne savais pas quoi mettre en titre pour mon probleme mais ça me semble correcte.
Je fais un jeu en C++ sur une base damier ( des cases donc ) qui contiennent différents types d'élément.
un élément entité ou un élément nourriture ou un élément mur.
Ces 3 éléments sont fondamentalement très différents et j'amerai les regrouper dans un seul pointeur dans une classe Case une sorte de conteneur.
ma classe case :
J'avais penser à un type void * mais j'ai lu que :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 class Case { public: Case(int num, Entite *ent); ~Case(); int get_num(); void set_num(int num); Entite *get_entite(); void set_entite(Entite *entite); bool isEmpty(); private: int _num; Entite *_ent; // je voudrai ici un type Element // qui pourrait contenir les classes Entite, Nourriture, Mur };
OU une classe abstraite dont les autres seraient héritées mais qui serait completement videEn C++, le type void *, contrairement au C, ne peut être converti implicitement en un pointeur d'un autre type. Il faut obligatoirement effectuer un forçage de type.
je voulais juste savoir qu'elle etait la meilleure solution ou si une autre à laquelle je n'ai pas pensé existe.
j'espere avoir été clair
Merci beaucoup.
NhyMbuS
Partager