Steuern des Zugriffs auf Klassenmember
Sie können die Integrität der in C++ erstellten Software verbessern, indem Sie helfen, den Zugriff auf Daten und Funktionen von Klassenmembern zu steuern. Klassenmember können mit privatem, geschütztem oder öffentlichem Zugriff deklariert werden, wie in der folgenden Tabelle dargestellt:
Memberzugriffssteuerung
Zugriffstyp |
Bedeutung |
---|---|
Klassenmember, die als private deklariert werden, können nur von Memberfunktionen und von Friends (Klassen oder Funktionen) der Klasse verwendet werden. |
|
Klassenmember, die als protected deklariert werden, können von Memberfunktionen und von Friends (Klassen oder Funktionen) der Klasse verwendet werden. Darüber hinaus können sie von Klassen verwendet werden, die aus der Klasse abgeleitet sind. |
|
Klassenmember, die als public deklariert werden, können von jeder Funktion verwendet werden. |
Mit der Zugriffssteuerung können Sie verhindern, dass Objekte auf andere, nicht zweckgemäße Art und Weise verwendet werden. Dieser Schutz geht verloren, wenn explizite Typkonvertierungen (Umwandlungen) ausgeführt werden.
Hinweis
Die Zugriffssteuerung ist auf alle Namen gleich anwendbar: Memberfunktionen, Memberdaten, geschachtelte Klassen und Enumeratoren.
Der Standardzugriff auf Klassenmember (Member eines Klassentyps deklariert mit dem class-Schlüsselwort) ist "private", der Standardzugriff auf Member des Typs struct und union ist "public". In allen Fällen kann die derzeitige Zugriffsebene mithilfe des Schlüsselworts public, private oder protected geändert werden.