Sujet : [C++] Question sur l'héritage et la surcharge de méthodes virtuelles. |
ayachi |
legreg a écrit a écrit :
ce n'est pas un probleme de fonctions virtuelles
c'est parce que tu as des fonctions de definition
trop proches!
f(3), 3 peut-etre a la fois un int et un char
le compilateur ne sait pas quelle fonction appeler!
ce serait la meme chose si tu avais
class A{
int f(char);
int f(int);
};
A+
LEGREG
|
non non, même avec des objets de types très différents ça passe pas, et pour la surcharge ça peut être utile pour le design pattern visiteur par exemple, pour éviter des visitcontreteA et visitconreteB, et avoir un seul nom de méthode pour la classe visiteur. je sais, au boulot, j'ai du refaire les noms de toutes mes méthodes et les réécrire partout dans le code.
mais bon ce que je voulais c'est la raison théorique qui empêchent de faire ça. |