J'ai un petit problème de POO avec C++.
Voilà le souci :
-j'ai une classe mère abstraite qui défini son destructeur et une méthode abstraite
-et une classe fille qui redéfini la méthode virtuelle pure
L'idée serait que la mère puisse appeler la méthode getname de la fille à sa destruction afin d'afficher "deleting the daughter"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 class Mother { ~Mother(); virtual string getName() = 0; } Mother::~Mother(){ cout << "deleting " << this-getName() << endl; } class Daughter : public Mother { virtual string getName(){"the daughter";}; }
Evidemment ca marche pas, le compilateur râle.
La solution pourrait être d'utiliser une variable protected "string name" mais je ne préfererais pas. Y aurais-t-il une solution alternative ?
Merci.
Partager