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 :
et cela fonctionne tr�s bien.
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3 virtual Vecteur& operator + (Vecteur); virtual Vecteur& operator = (const Vecteur&);
Dans mon programme principal main je peux tr�s bien �crire (pour des vecteurs v, w et z) :
J'ai ensuite une classe polyn�me, qui d�rive (publiquement) de vecteur.
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3 v = w; w = (z + v);
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 :
Code : S�lectionner tout - Visualiser dans une fen�tre � part a = b;
le compilateur me dit qu'il ne trouve pas le code de la fonction = correspondante.
Code : S�lectionner tout - Visualiser dans une fen�tre � part a = (b + c);
Cela me d�passe que cela fonctionne dans la classe de base mais pas dans la classe d�riv�e ...
merci![]()
Partager