Beispielprogramm: VERERB1.CPP
Wenn Du Dir das Programm VERERB1.CPP etwas genauer ansiehst, wirst Du bemerken, daß es sich um das Programm ALLEVEH.CPP handelt, das wir in Kapitel 7 entwickelt haben. Der Code wurde nur neu arrangiert. Der größte Unterschied ist, daß einige der einfacheren Funktionen zu inline-Funktionen umfunktioniert wurden. Solche kurzen Funktionen solltest Du immer inline deklarieren, da dies nicht nur weniger Schreibarbeit für Dich bedeutet, sondern auch die Abarbeitungsgeschwindigkeit erhöht.
Die andere Änderung ist die der Anordnung von Klassen und deren Methoden, wobei wir zuerst alle Klassen definieren, gefolgt vom Hauptprogramm. Damit haben wir alle Schnittstellendefinitionen auf einer Seite, was das Studium des Code etwas erleichtern sollte. Die Implementationen der Methoden kommen ganz zum Schluß, wo sie auch bei der Hand sind, aber sie stören nicht die Klassendefinitionenen, die wir uns in diesem Kapitel etwas genauer ansehen wollen. Das sollte Dir zeigen, daß die Anordnung von Klassen und Methoden in C++ sehr flexibel erfolgen kann. Natürlich hast Du auch bemerkt, daß wir hier gegen die Natur von C++ und ihr Konzept der getrennten Kompilation verstoßen. Am besten sollten alle Dateien so aufgeteilt werden wie wir es in Kapitel 7 getan haben.
Wie wir schon erwähnt haben, kennen beide abgeleiteten Klassen, Auto und Laster eine Variable mit dem Namen Passagieranzahl, was erlaubt ist. Die Klasse Auto hat eine Methode, Initialisiere(), die denselben Namen trägt wie eine Methode der Superklasse mit dem Namen Vehikel. Die Neuordnung der Dateien ändert nichts an der Legalität dieses Konstrukts.
Wenn Du Dich überzeugt hast, daß diese Datei identisch mit dem Programm ALLEVEH.CPP aus Kapitel 7 ist, kompiliere es und führe es aus. Da wir alles in eine Datei gezwängt haben, benötigst Du dafür auch kein "make" mehr. Das ist auch einer der Gründe, warum wir für dieses Kapitel diese Form gewählt haben: das kompilieren geht schneller und einfacher.
Copyright © 1997, 1998, 2001-2006 Heinz Tschabitscher - Letzte Änderung 15. Dezember 2005
Heinz Tschabitscher - | Datenschutz | Impressum - Kommentare, Kritik, Anregungen, Bedeutungsschwangeres?