Vous avez des améliorations (ou des corrections) à proposer pour ce document :
je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.
Les concepts relatifs à l'héritage : Aspects fondamentaux
Que pensez-vous de ces codes ? Pourquoi ? 2/2
class Square {
Point2D center;
double length;
public:
void move( const Vector2D &v );
void move( double dx, double dy );
void setCenter( const Point2D &center );
void setCenter( double x, double y );
. . .
};
C++ Niveau 1 - Dominique Liard - 1999 .. 2019
<numéro>
Notes:
Il semble que cette technique ne soit pas la bonne pour au moins une première raison : les méthodes move et setCenter définies par les types Circle et Square devront être définies à l'identique deux fois (Circle::move et Square::move, ?). Effectivement dans les deux cas, le même attribut center est utilisé.
Ainsi si un bug s'est glissé dans votre code, vous l'aurez dupliqué plusieurs fois. Si le système doit évoluer, plusieurs modifications seront nécessaires. Et si un nouveau type de figures géométriques est défini, il faudra encore dupliquer du code. Et comme vous le savez, copier/coller du code n'est pas forcément une bonne alternative. L'héritage devrait nous permettre de mieux structurer un tel code.
Améliorations / Corrections
Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.
Emplacement :
Description des améliorations :