Bonjour,
J'ai des classes héritant d'une classe possédant une méthode compare. J'aimerais surcharger ces méthodes dans les classes filles comme dans l'exemple suivant:
Le virtual ne sert à rien ici et le code suivant retourne "A".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 class A { public: virtual void compare(A& a) { std::cout << "A"; } }; class B : public A { public: void compare(B& b) { std::cout << "B"; } };
Le problème c'est que lors que je dois appeler compare je n'ai que des pointeurs ou des références sur A. Est-ce que j'ai une solution pour gérer ça simplement?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 B b1, b2; A * a1, * a2; a1 = &b1; a2 = &b2; a1->compare(*a2);
Merci
Partager