So steuern Sie Zugriffsmodifikatoren in C++: Grundlegendes zur Sichtbarkeit von Mitgliedern

So Steuern Sie Zugriffsmodifikatoren In C Grundlegendes Zur Sichtbarkeit Von Mitgliedern



Das Ausblenden von Daten ist eine der Hauptfunktionen von C++, die sich auf die Einschränkung des Zugriffs auf Daten in einer Klasse bezieht, um den unerwünschten Zugriff auf die Daten einer Klasse von außen zu verhindern. Daher werden die Zugriffsmodifikatoren verwendet, um zu definieren, welche Klassenmitglieder für welche externe Quelle zugänglich sind und welche nicht.

Zugriffsmodifikatoren in C++

Zugriffsmodifikatoren werden verwendet, um die Zugänglichkeit und Sichtbarkeit der Daten einer Klasse zu verwalten. Sie legen einige Einschränkungen für die Datenelemente fest, sodass externe Funktionen nicht auf sie zugreifen können. In C++ gibt es drei Arten von Zugriffsmodifikatoren:

Modifikator für den öffentlichen Zugriff in C++

Alle unter dem Schlüsselwort public deklarierten Mitglieder der Klasse stehen allen Funktionen außerhalb der Klasse innerhalb des Programms zur Verfügung. Der direkte Member-Zugriffsoperator (.), auch Punktoperator genannt, kann mit dem Objekt dieser bestimmten Klasse verwendet werden, um auf diese Datenmember zuzugreifen.







Beispiel

Der öffentliche Zugriffsmodifikator wird zum Deklarieren einer Klasse verwendet, und auf ihre Datenmitglieder wird von den anderen Funktionen innerhalb des Programms zugegriffen.



#include

#include

#include

Verwenden des Namensraums std ;
Klasse Dreieck
{
öffentlich :
schweben X , Und , Mit ;
Leere Eingang ( )
{
cout << „Geben Sie die Seite x eines Dreiecks ein:-“ ;
Essen >> X ;
cout << „Geben Sie die Y-Seite eines Dreiecks ein:-“ ;
Essen >> Und ;
cout << „Geben Sie die z-Seite eines Dreiecks ein:-“ ;
Essen >> Mit ;
}
Leere Bereich ( )
{
schweben S = ( X + Und + Mit ) / 2 ;
schweben Bereich = Quadrat ( S * ( S - X ) * ( S - Und ) * ( S - Mit ) ) ;
cout << ' \N Fläche des Dreiecks =' << Bereich ;
}
} ;
int hauptsächlich ( )
{
Dreieck t1 ;
t1. Eingang ( ) ;
t1. Bereich ( ) ;
zurückkehren 0 ;
}

Das Dreieck ist als Klasse definiert und seine Parameter stehen unter dem Schlüsselwort public. Anschließend wird die Fläche des Dreiecks außerhalb dieser Klasse berechnet, indem auf die Datenelemente des öffentlichen Modifikators zugegriffen wird.







Die drei Seiten des Dreiecks werden vom Benutzer eingegeben und die Fläche des Dreiecks wird durch Zugriff auf die Werte außerhalb der Klasse unter Verwendung der Standardformel berechnet, die 13,4164 lautet.

Privater Zugriffsmodifikator in C++

Alle unter dem Schlüsselwort private deklarierten Mitglieder der Klasse stehen keiner Funktion außerhalb der Klasse im Programm zur Verfügung. Diese privaten Mitglieder können nur von den direkten Mitgliedern innerhalb derselben Klasse gelesen werden. Allerdings können auch Friend-Funktionen und -Klassen auf die Daten zugreifen.



Beispiel

Die beiden Klassen public und private werden deklariert und der Rückgabewert des Programms soll die Fläche des Dreiecks sein.

#include

#include

#include

Verwenden des Namensraums std ;
Klasse Dreieck
{

Privat :
schweben X , Und , Mit ;
öffentlich :
Leere Eingang ( )

{

cout << „Geben Sie die Seite x eines Dreiecks ein:-“ ;
Essen >> X ;
cout << „Geben Sie die Y-Seite eines Dreiecks ein:-“ ;
Essen >> Und ;
cout << „Geben Sie die z-Seite eines Dreiecks ein:-“ ;
Essen >> Mit ;

}
Leere Bereich ( )
{

schweben S = ( X + Und + Mit ) / 2 ;
schweben Bereich = Quadrat ( S * ( S - X ) * ( S - Und ) * ( S - Mit ) ) ;
cout << ' \N Fläche des Dreiecks =' << Bereich ;

}

} ;

int hauptsächlich ( )
{
Dreieck t1 ;
t1. Eingang ( ) ;
t1. Bereich ( ) ;
zurückkehren 0 ;

}

In main() kann das Objekt t1 nicht direkt auf die privaten Klassenvariablen float x, y und z zugreifen und kann daher nur indirekt über die öffentliche Funktion input() manipuliert werden, da diese Funktion die Werte von x, y und z erhält.

Die Fläche des Dreiecks wird durch Zugriff auf die private Klasse durch deren Manipulation mithilfe der öffentlichen Klasse ermittelt. Wenn die Werte von x, y und z nicht in der öffentlichen Klasse deklariert werden, kann in main() für Berechnungen nicht auf sie zugegriffen werden.

Geschützter Zugriffsmodifikator in C++

Die Mitglieder und Funktionen unter dem Schlüsselwort protected sind geschützt. Auf sie kann nur innerhalb der Klasse und der abgeleiteten Klasse zugegriffen werden. Die übrigen Klassen haben keinen Zugriff auf ihre Daten. Sie sind stark geschützt.

Beispiel

Die geschützten Daten unter dem Schlüsselwort protected können nur innerhalb der Klasse und von der Klasse gelesen werden, die die abgeleitete Klasse ist. Dieses Beispiel ist die praktische Demonstration des geschützten Zugriffsmodifikators.

#include

#include

#include

Verwenden des Namensraums std ;
//Elternklasse
Klasse Dreieck
{

geschützt :
schweben X , Und , Mit ;
} ;
//Unterklasse
Klasse TriangleChild : öffentliches Dreieck {
öffentlich :
Leere Eingang ( )

{

cout << „Geben Sie die Seite x eines Dreiecks ein:-“ ;
Essen >> X ;
cout << „Geben Sie die Y-Seite eines Dreiecks ein:-“ ;
Essen >> Und ;
cout << „Geben Sie die z-Seite eines Dreiecks ein:-“ ;
Essen >> Mit ;

}
Leere Bereich ( )
{
schweben S = ( X + Und + Mit ) / 2 ;
schweben Bereich = Quadrat ( S * ( S - X ) * ( S - Und ) * ( S - Mit ) ) ;
cout << ' \N Fläche des Dreiecks =' << Bereich ;

}
} ;

int hauptsächlich ( )

{
TriangleChild Kind ;
Kind. Eingang ( ) ;
Kind. Bereich ( ) ;
zurückkehren 0 ;

}

TriangleChild ist eine geerbte Klasse, die von der Klasse Triangle abgeleitet ist. Die Variablen x, y und z werden in Triangle mit dem Schlüsselwort protected deklariert. Dies bedeutet, dass diese Variablen geschützt sind, aber vom TriangleChild darauf zugegriffen werden kann, da Triangle seine übergeordnete Klasse ist. Die Werte von Variablen wurden in TriangleChild zugewiesen, obwohl sie in der Triangle-Klasse deklariert sind.

Auf die Variablen wird über die untergeordnete Klasse zugegriffen, und dann wird die Fläche eines Dreiecks berechnet.

Abschluss

Das Ausblenden von Daten verhindert den unerwünschten Zugriff auf die Daten einer Klasse von außen. Zugriffsmodifikatoren werden verwendet, um die Zugänglichkeit und Sichtbarkeit der Daten in einem Programm zu verwalten. Zum Ausblenden der Daten werden private, geschützte und öffentliche Zugriffsmodifikatoren verwendet. Daten unter dem Schlüsselwort public können von den Funktionen auch von außerhalb der Klasse gelesen werden. Die als privat deklarierten Daten können nur innerhalb der Klasse gelesen werden, während auf geschützte Daten sowohl die übergeordnete als auch die untergeordnete Klasse zugreifen können.