private
wird für Mitgliedsdaten bevorzugt. Mitglieder in C ++ - Klassen sind private
standardmäßig.
public
wird für Mitgliederfunktionen bevorzugt, ist jedoch Ansichtssache. Zumindest einige Methoden müssen zugänglich sein. public
ist für alle zugänglich. Es ist die flexibelste Option und am wenigsten sicher. Jeder kann sie benutzen und jeder kann sie missbrauchen.
private
ist überhaupt nicht zugänglich. Niemand kann sie außerhalb der Klasse benutzen und niemand kann sie missbrauchen. Nicht einmal in abgeleiteten Klassen.
protected
ist ein Kompromiss, da es in abgeleiteten Klassen verwendet werden kann. Wenn Sie von einer Klasse abgeleitet sind, haben Sie ein gutes Verständnis der Basisklasse und achten darauf, diese Mitglieder nicht zu missbrauchen.
MFC ist ein C ++ - Wrapper für die Windows-API, bevorzugt public
und protected
. Klassen , die von Visual Studio - Assistenten eine hässliche Mischung aus haben protected
, public
und private
Mitglieder. Die MFC-Klassen selbst haben jedoch eine gewisse Logik.
Mitglieder wie SetWindowText
sind, public
weil Sie häufig auf diese Mitglieder zugreifen müssen.
Mitglieder wie z. B. OnLButtonDown
bearbeiten Benachrichtigungen, die vom Fenster empfangen werden. Sie sollten nicht zugänglich sein, deshalb sind sie protected
. Sie können weiterhin in der abgeleiteten Klasse darauf zugreifen, um diese Funktionen zu überschreiben.
Einige Mitglieder müssen Threads und Nachrichtenschleifen ausführen. Sie sollten nicht darauf zugreifen oder sie überschreiben, daher werden sie als deklariert private
In C ++ - Strukturen sind Mitglieder public
standardmäßig. Strukturen werden normalerweise nur für Daten verwendet, nicht für Methoden. Daher wird die public
Deklaration als sicher angesehen.