Bonjour à tous,
Je bloque sur un problème de conception pour appeler une méthode virtuelle depuis un constructeur. Voici mon cas de figure :
J'ai plusieurs filles et dans certaines la méthode display() est redéfinit.
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
22
23
24
25
26
27 class mere: { public: mere() { display(); } virtual void display() { cout<<"mere::display()"<<endl; } } class fille: public mere { public: fille():mere() { } void display() { cout<<"fille::display()"<<endl; } }
Cependant c'est toujours la méthode mere::display() qui est appelée.
Une solution (lourde) serait d'appeler this->display() dans chaque constructeur fille mais n'y a-t-il pas quelquechose de plus propre ?
merci par avance.
Partager