class kasten : public grafikobjekt { private: int x_laenge, y_lanege; public: kasten(); kasten(int x, int y, int xl, int yl) : grafikobjekt(x,y), x_laenge(xl), y_laenge(yl) {}; virtual void zeichne(); virtual void loesche(); };Mann nennt dann die
grafikobjekt
-Klasse die Basisklasse und die
kasten
-Klasse die abgeleitete Klasse. Positionsänderungen
erfolgen dann in natürlicher Weise als
kasten K(11, 7, 40, 20); K.setPos(33, 4);
Hierbei wird dann die Funktion setPos
der Basisklasse aufgerufen.
Diese ändert dann die Werte der entsprechenden Variablen.
Der Programmierer muß sich keine Gedanken um die Realisierung der Methoden der Basisklasse machen. Sie wird ihm frei Haus geliefert. Er muß nur die öffentlich zugänglichen Methoden und Elemente kennen, um mit ihnen arbeiten zu können.
Die Initialisierung der Elemente der Basisklasse erfolgt, in dem der Konstruktor des Basisklasse in die Konstruktorinitialisierungsliste aufgenommen wird und evtl. mit Parametern aufgerufen wird. Wie wir schon gelernt haben sollten möglichst auch alle anderen Elemente in dieser Liste initialisiert werden, da so viel kostbare Rechenzeit gespart werden kann.