Bonjour, petit problème, j'ai ça version simplifiée :

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
 
 
class A {
   bool m(int p);
};
 
class B : public A {
   bool m(int p);
}
 
bool B::m(int p) {
   A::m(3);
   return true;
}
 
int main(void) {
 
   A *Obj;
   Obj = new B();
 
   B->m(4); // erreur ici, le compilateur ne sait pas quelle méthode m appeler. Je veux appeler la méthode fille
 
   delete Obj;
 
return 0;
}
En fait je veux appeler des objets spécialisés avec Obj, puis travailler que avec Obj. Mais j'ai cette erreur sur B->m(4) ... Comment résoudre ce problème sans changer le nom de la méthode pour conserver la surcharge ?