Sommario
Cosa sono gli specificatori di accesso in C++
In C ++, gli specificatori di accesso sono parole chiave riservate che servono a determinare la visibilità e l'accessibilità dei membri di una classe. Queste parole chiave vengono utilizzate per limitare o consentire l'accesso a diversi membri della classe in un programma.
Gli specificatori di accesso determinano da dove è possibile accedere a un membro della classe. Questi specificatori consentono al codice C ++ di accedere a un membro di classe all'interno o all'esterno di una classe. Consentono inoltre alle lezioni derivate di accedere ai membri della classe principale.
Negli specificatori di accesso C ++ possono essere classificati in tre diversi specificatori:
Questi specificatori controllano la visibilità dei membri della classe, che determina dove e da chi è possibile accedere al programma.
Ciò che è privato in C++
Privato è un specificatore di accesso in C ++ che limita la visibilità e l'accessibilità dei membri della classe solo al classe stessa. I membri che sono definiti come privati non sono accessibili dall'esterno della classe o delle sue classi derivate. I membri privati sono nascosti da altre classi, il che impedisce loro di modificare o accedere ai dati.
Ciò che è protetto in C++
Protetto è un specificatore di accesso in C ++ che limita la visibilità e l'accessibilità dei membri della classe al classe stessa e il suo Classi derivate. I membri definiti come protetti possono essere accessibili dall'interno di una classe o dalle sue classi derivate, ma non dall'esterno della classe. I membri protetti sono anche nascosti da altre classi, il che impedisce loro di modificare o accedere ai dati.
Differenza tra privato e protetto in C++
La differenza principale tra privato e protetto in C ++ è il livello di accessibilità dei membri della classe. L'accesso ai membri privati è limitato all'interno della classe, mentre i membri protetti sono accessibili anche dalle classi derivate.
Un'altra differenza è che i membri privati sono completamente nascosti da altre classi, mentre i membri protetti sono parzialmente nascosti. Ciò significa che le classi derivate possono accedere ai membri protetti, ma non modificarli direttamente. Al contrario, i membri privati non possono essere accessibili o modificati da qualsiasi altra classe.
Esempi di specificatori di accesso privato e protetto
Per dimostrare il concetto di specificatori di accesso nella programmazione orientata agli oggetti, è utile fornire esempi di specificatori di accesso privato e protetto. Diamo un'occhiata più da vicino a come funzionano gli specificatori di accesso privati e protetti e alcuni esempi di come possono essere utilizzati.
Esempio di classe privata in C++
L'impianto di accesso privato limita la visibilità di un membro della classe all'interno della classe stessa. Il codice seguente spiega la classe privata in un programma C ++:
#includereQuesto programma C ++ definisce una persona di classe con due variabili di membro privato nome e cognome E Anni, e due funzioni dei membri pubblici getPersonInfo () E DisplayPersonInfo ().
La funzione getPersonInfo () spinge l'utente a inserire il nome completo della persona e l'età. Successivamente, li archivia nelle variabili dei membri privati FullName e Yearsold, rispettivamente.
La funzione DisplayPersonInfo () stampare semplicemente il nome e l'età della persona sulla console.
Nella funzione principale (), creiamo una persona oggetto della classe persona e chiamiamo le sue funzioni getpersoninfo () e displaypersoninfo () per spingere l'utente a inserire le informazioni di una persona e quindi visualizzarli sulla console.
Esempio di classe protetta in C++
L'impepitore di accesso protetto limita la visibilità di un membro della classe all'interno della classe e delle sue sottoclassi. Facciamo un esempio che spiega le classi protette in un programma C ++.
#includereQui in questo codice, la classe base è persona con membri privati nome e cognome e età e un membro protetto Idnumber. La classe derivata è studente con un membro privato e funzioni pubbliche setId (), getStudentinfo () e DisplayStudentinfo ().
La funzione setId () imposta il numero ID, che definisce a Membro protetto della classe base. La funzione getStudentinfo () legge i dettagli di base dello studente come il nome completo, l'età e la città in cui vivono.
IL DisplayStudentinfo () La funzione stampa tutti i dettagli dello studente che include il loro numero ID, nome completo, età e città.
Conclusione
Specificatori di accesso privato e protetto nella programmazione orientata agli oggetti assicurano l'incapsulamento e il nascondiglio dei dati. I membri privati sono completamente nascosti da altre classi, mentre i membri protetti sono parzialmente nascosti e possono essere accessibili da classi derivate. La scelta tra l'utilizzo degli specificatori di accesso privato e protetto dipende dalla progettazione e dall'implementazione della classe. Leggi l'articolo per comprendere i dettagli degli specificatori di accesso privato e protetti.