Bonjour à tous,

Je bloque sur un problème de conception pour appeler une méthode virtuelle depuis un constructeur. Voici mon cas de figure :
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;
	}
}
J'ai plusieurs filles et dans certaines la méthode display() est redéfinit.
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.