Twitter und Facebook-Anbindung
X
Tweet Follow @twitterapi
!!! Anbindung an twitter und facebook öffnen !!!

Wenn Ihnen mein Online-Buch gefällt,
dann bedanken Sie sich doch mit einer kleinen Spende...

16.1 Die Datei TestKlasse.h

16.1 Die Datei TestKlasse.h

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
					
// Definition eines neuen Klassendatentyps
class CTestKlasse {
	public:
		// Standardkonstruktor-Methode
		CTestKlasse(void);
		// 1. Benutzerdefinierte Konstruktor-Methode
		CTestKlasse(int iValue);
		// 2. Benutzerdefinierte Konstruktor-Methode
		CTestKlasse(int iValue1, int iValue2);
		// Kopierkonstruktor-Methode
		CTestKlasse(const CTestKlasse oTestObjekt);
		// Destruktor
		~CTestKlasse(void);

		// Speichert eine Zahl
		int m_iZahl1;
		// Speichert eine andere Zahl
		int m_iZahl2;

		// Gibt interne Werte aus
		void Ausgabe(void);
};
					

In Zeile 2 sehen Sie den Klassenkopf. Er erinnert an die Definition einer Struktur. Später werde ich Ihnen aber noch zeigen, dass dies hier nur die halbe Wahrheit ist, aber fürs erste soll das reichen.

In Zeile 3 steht jetzt etwas neues, auf was ich bisher noch nicht weiter eingegangen bin. Gemeint ist der Modifikator "public". Er ist dafür verantwortlich, dass die Attribute und Methoden, nach außen sichtbar sind. Weiter möchte ich an dieser Stelle nicht darauf eingehen, da ich im Kapitel der Vererbung, diese Sachen sehr ausführlich erläutern werde.

In den Zeilen 5 bis 13 ist jetzt die Definition der Konstruktoren und des Destruktors. Auffällig an ihnen ist wie erwähnt, dass diese zwei Methoden keinen Rückgabewert besitzen.

In Zeile 16 und 18 habe ich zwei Attribute definiert. Auffällig ist hier das "m_"; vor dem Variablenname. Diese Konvention ist üblich, aber nicht Pflicht. Man bringt mit ihr zum Ausdruck, dass es sich um eine Membervariable handelt. Dies soll später sicher stellen, dass man bei der Implementierung der Methoden genau sieht, ob es sich bei einer Variablen um eine Member - oder eine lokal definierte Variable handelt. Wie gesagt, es ist eine von vielen Möglichkeiten, seinen Quelltext zu strukturieren und Sie müssen sich nicht daran halten, aber ich lege es Ihnen ans Herz, dies doch zu tun, da dies, gerade für Andere, die später evtl. mit Ihrem Zeug klar kommen müssen, das Leben sehr erleichtert.

Zum Schluss, in Zeile 21, habe ich noch eine Methode "Ausgabe" definiert, welche später nur die Werte von "m_iZahl1" und "m_iZahl2"zurück geben soll. Hier macht man in der Regel kein "m_" davor, da es in der Praxis nicht so wichtig ist, da man ja eine Klasse so aufbaut, dass sie sich selbst verwaltet und somit die Funktionsaufrufe größtenteils Methodenaufrufe sind.

Zum Seitenanfang
Zum Inhaltsverzeichnis

© Copyright by Thomas Weiß, 2009 - 2012