Klassentypen
Nach oben zu Klassen - Index
Die Deklaration erzeugt einen eindeutigen Klassentyp Klassenname. Damit können Sie weitere Objekte dieses Typs (sog. Instanzen) und von diesem Typ abgeleitete Objekte (z.B. Zeiger auf Klassenname, Referenzen auf Klassenname oder Arrays von Klassenname) definieren:
class X { ... }; X x, &xr, *xptr, xarray[10]; /* vier Objekte: Typ X, Referenz auf X, Zeiger auf X und Array von X */ struct Y { ... }; Y y, &yr, *yptr, yarray[10]; // in C wäre das // struct Y y, *yptr, yarray[10]; union Z { ... }; Z z, &zr, *zptr, zarray[10]; // in C wäre das // union Z z, *zptr, zarray[10];
Beachten Sie den Unterschied in den Struktur- und Variantendeklarationen zwischen C und C++: Die Schlüsselwörter struct und union sind in C entscheidend, aber nicht in C++. In letzterem werden sie nur benötigt, wenn die Klassennamen Y und Z verborgen sind (siehe Gültigkeitsbereich von Klassennamen)
Siehe auch
- C++-Klassen
- Gültigkeitsbereich Klasse
- Klassenobjekte
- Klassen-Member-Liste
- Member-Funktionen
- Das Schlüsselwort this
- Statische Elemente
- Inline-Funktionen
- Gültigkeitsbereich von Elementen
- Verschachtelte Typen
- Element-Zugriffskontrolle
- Zugriff auf Basisklassen und abgeleitete Klassen
- Virtuelle Basisklassen
- Friends von Klassen