J'ai un petit pb avec mes classes
Code :
- class a
- {
- ...
- public:
- virtual void aff();
- ...
- }
- class b:public a
- {
- ...
- public:
- virtual void aff();
- ...
- }
- class c: public b
- {
- ...
- public:
- void aff();
- ...
- }
- class d: public a
- {
- ...
- public:
- void aff();
- ...
- }
|
j'ai un une pointeur p de type 'a'.
si p pointe une instance a
a.aff() = a::aff();
si p pointe une instance b
a.aff() = b::aff();
Le probleme est ici, je voudrais c::aff();
si p pointe une instance c
a.aff() = b::aff();
si p pointe une instance d
a.aff() = d::aff();
C'est normal que cela ne fonctionne pas?
Une solution?