Re: Surcharge operateur =
Citation:
Envoyé par rulianf
Supposons que j'utilise une classe A qui possède son propre opérateur = et que je crée alors une classe dérivée B.
Par défaut (*), si l'héritage est public, pas la peine d'aller plus loin, cela t'explosera à la figure. Les hiérarchies polymorphes sont incompatibles avec les copies de valeurs. Problème de sémantiques.
J'hésite entre :
- tu as cru qu'il fallait toujours définir les opérations de recopie parce que la syntaxe le permet (mauvaise supposition ; erreur de débutant)
- le design n'est pas bon (manque d'expérience C++ et/ou de recul sur les besoins réels)
- tu vas avoir besoin de jeter un sérieux coup d'oeil du côté de l'idiome enveloppe-lettre (si tu es dans un des quelques rares cas particuliers où une sémantique de valeur est requise sur une hiérarchie polymorphe)
(*) Sans recourrir à l'idiome enveloppe-lettre ou designs approchants.