Bonjour,

J'ai une classe contenant certains opéateurs surchargés, que je dérive en une autre classe.
Seulement les opérateurs dans la classe dérivée ne fonctionnent pas comme ils devraient, alors qu'ils fonctionnent impeccablement dans la classe de base.
Auriez-vous une idéé sur l'origine du problème ?

Voici les détails :

Je définis dans ma classe de base les opérateurs que voici :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
virtual Vecteur& operator + (Vecteur);
virtual Vecteur& operator = (const Vecteur&);
et cela fonctionne très bien.
Dans mon programme principal main je peux très bien écrire (pour des vecteurs v, w et z) :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
v = w;
w = (z + v);
J'ai ensuite une classe polynôme, qui dérive (publiquement) de vecteur.
Je ne prends pas la peine de redéfinir les opérateurs en question vu que leur fonctionnement est en tout point identique.
Cependant pour trois polynômes a,b,c je peux écrire :

mais si je tape :

le compilateur me dit qu'il ne trouve pas le code de la fonction = correspondante.
Cela me dépasse que cela fonctionne dans la classe de base mais pas dans la classe dérivée ...

merci