Wir verwenden die Laster-Klasse

Wenn wir uns nun ansehen, wie die Klasse Laster im Hauptprogramm verwendet wird, sehen wir, daß die Zeilen 63 und 65 aus obigem Grund auskommentiert wurden. Die Zeilen 66 und 67 allerdings haben wir aus einem anderen Grund auskommentiert. Zwar ist die Methode mit dem Namen Effizienz() verfügbar und kann als Element der Klasse Laster aufgerufen werden, wir können sie aber doch nicht verwenden, da keine Möglichkeit besteht, die Variablen Raeder und Gewicht des Objektes der Klasse Laster zu initialisieren. Wir können das Gewicht des Laster auslesen, wie wir es in Zeile 102 tun, aber da wir die Variable nicht initialisieren können, ist das Ergebnis bedeutungslos und wir haben die Zeilen 66 und 67 auskommentiert.

Private Vererbung ist der Verwendung eines eingebetteten Objektes sehr ähnlich und wird praktisch nicht verwendet. Bis Du sehr viel Erfahrung mit C++ und objektorientiertem Programmieren überhaupt gesammelt hast, solltest Du ausschließlich public bei der Vererbung verwenden. Es gibt wahrscheinlich keinen guten Grund, private oder protected überhaupt jemals anzuwenden. Vermutlich existieren sie nur, damit die Sprache auch komplett ist.

Kompiliere das Programm und führe es aus. (Amen.) Du solltest einige der auskommentierten Zeilen aus-kommentieren (d.h. die Kommentare entfernen), um zu sehen, mit welchen Fehlern sich der Compiler meldet.

(weiter...)