Eine einfache Klasse


Unser erstes Programm enthält eine Klasse und zwei Objekte dieser Klasse. Obwohl es sehr einfach ist, veranschaulicht es die Syntax und die grundlegenden Merkmale in C++. Es folgt das Listing für das Programm SMALLOBJ:

// smallobj.cpp // Veranschaulicht kleine, einfache Objekte #include <iostream.h> class smallobj // Setzt eine Klasse fest { private: int somedata; // Daten der Klasse puplic: void setdata(int d) // Komponentenfunktion zum Setzen der Daten { somedate = d; } void showdata() // Komponentenfunktion zum Anzeigen der Daten { cout << "\nDaten sind " << somedata; } }; void main() { smallobj s1,s2; // Definieren zweier Objekte der Klasse smallobj s1.setdata(1066); // Aufruf der Komponentenfunction zum Setzen der Daten s2.setdata(1776); s1.showdata(); // Aufrauf der Komponentenfunktion zum Anzeigen der Daten s2.showdata(); }

Die in diesem Programm festgesetzte Klasse smallobj enthält ein Datenelement und zwei Komponentenfunktionen. Diese Funktionen stellen die einzige Möglichtkeit dar, von außerhalb dieser Klasse auf dieses Datenelement zuzugreifen. Die erste Komponentenfunktion setzt das Datenelement auf einen Wert, und die zweite zeigt den Wert an. (Das mag im ersten Moment wie böhmische Dörfer klingen, aber wir werden im weiteren Verlauf Verlauf klären, was diese Ausdrücke bedeuten.)

Hier ist die Ausgabe des Programms:

Daten sind 1066 Objekt s1 zeigt dies an Daten sind 1776 Objekt s2 zeigt dies an

Öffentlich und privat

Für gewöhnlich sind Daten in einer Klasse privat und die Funktionen öffentlich. Dies resultiert aus der Einsatzweise der Klassen. Die Daten werden verseckt, so daß sie vor unbeabsichtigter Manipulation sicher sind, während die Funktionen, die mit diesen Daten operieren, öffentlich sind, so daß man von außerhalb der Klasse auf diese Funktionen zugreifen kann. Es gibt aber keine bindende Regel, daß Daten provat und Funktionen öffentlich sein müssen.


34