Innholdsfortegnelse
Hva er tilgangspesifikasjoner i C++
I C ++ er tilgangspesifikasjoner reserverte nøkkelord som tjener formålet med å bestemme synligheten og tilgjengeligheten til medlemmene i en klasse. Disse nøkkelordene brukes til å begrense eller tillate tilgang til forskjellige klassemedlemmer i et program.
Tilgangspesifikasjoner bestemmer hvor et klassemedlem kan nås. Disse spesifikasjonene tillater C ++ -kode å få tilgang til et klassemedlem fra eller utenfor en klasse. De lar også avledede klasser få tilgang til hovedklassemedlemmene.
I C ++ kan tilgangspesifikasjoner kategoriseres i tre forskjellige spesifikasjoner:
Disse spesifikasjonene kontrollerer synligheten til klassemedlemmer, som avgjør hvor og av hvem de kan nås i programmet.
Hva er privat i C++
Privat er en tilgangspesifikator i C ++ som begrenser synligheten og tilgjengeligheten til klassemedlemmer til bare klasse i seg selv. Medlemmer som er definert som private er ikke tilgjengelige fra utenfor klassen eller dens avledede klasser. De private medlemmene er skjult for andre klasser, noe som forhindrer dem i å endre eller få tilgang til dataene.
Hva er beskyttet i C++
Beskyttet er en tilgangspesifikator i C ++ som begrenser synligheten og tilgjengeligheten til klassemedlemmer til klasse i seg selv og dets avledede klasser. Medlemmer definert som beskyttet kan nås fra innsiden av en klasse eller dens avledede klasser, men ikke utenfor klassen. De beskyttede medlemmene er også skjult for andre klasser, noe som forhindrer dem i å endre eller få tilgang til dataene.
Forskjell mellom privat og beskyttet i C++
Hovedforskjellen mellom privat og beskyttet i C ++ er nivået av tilgjengeligheten til klassemedlemmer. Tilgang til private medlemmer er begrenset i klassen, mens beskyttede medlemmer også er tilgjengelige fra avledede klasser.
En annen forskjell er at private medlemmer er helt skjult for andre klasser, mens beskyttede medlemmer delvis er skjult. Dette betyr at avledede klasser kan få tilgang til beskyttede medlemmer, men ikke endre dem direkte. Derimot kan ikke private medlemmer få tilgang til eller endres av noen annen klasse.
Eksempler på private og beskyttede tilgangspesifikasjoner
For å demonstrere konseptet med tilgangspesifikasjoner i objektorientert programmering, er det nyttig å gi eksempler på private og beskyttede tilgangspesifikasjoner. La oss se nærmere på hvordan private og beskyttede tilgangspesifikasjoner fungerer og noen eksempler på hvordan de kan brukes.
Eksempel på privat klasse i C++
Den private tilgangsspesifikatoren begrenser synligheten til et klassemedlem i selve klassen. Nedenfor koden forklarer den private klassen i et C ++ -program:
#inkludereDette C ++ -programmet definerer en klasseperson med to private medlemsvariabler fullt navn og år gammel, og to offentlige medlemsfunksjoner getPersonInfo () og DisplayPersonInfo ().
GetPersonInfo () -funksjonen ber brukeren om å oppgi personens fulle navn og alder. Etter det lagrer dem i henholdsvis de private medlemsvariablene fullnavn og årsold.
DisplayPersonInfo () -funksjonen skriver ganske enkelt ut personens navn og alder til konsollen.
I Main () -funksjonen oppretter vi en objektperson i personklassen, og kaller dens getPersonInfo () og DisplayPersonInfo () -funksjoner for å be brukeren legge inn en persons informasjon og deretter vise den på konsollen.
Beskyttet klasseeksempel i C++
Den beskyttede tilgangspesifikatoren begrenser synligheten til et klassemedlem til i klassen og dets underklasser. La oss ta et eksempel som forklarer beskyttede klasser i et C ++ -program.
#inkludereHer i denne koden er baseklassen person med private medlemmer fullt navn og alder, og et beskyttet medlem ID-nummer. Den avledede klassen er student med en privat medlemsby og offentlige medlemsfunksjoner Setid (), GetStudentInfo () og DisplayStudentInfo ().
Setid () -funksjonen angir ID -nummeret, som definerer en beskyttet medlem av baseklassen. GetStudentInfo () -funksjonen leser de grunnleggende detaljene til studenten som fullt navn, alder og byen de bor i.
De DisplayStudentInfo () Funksjon skriver ut alle detaljene til studenten som inkluderer ID -nummer, fullt navn, alder og by.
Konklusjon
Private og beskyttede tilgangspesifikasjoner i objektorientert programmering sikrer innkapsling og skjul av data. Private medlemmer er helt skjult for andre klasser, mens beskyttede medlemmer er delvis skjult og kan nås av avledede klasser. Valget mellom å bruke private og beskyttede tilgangspesifikasjoner avhenger av design og implementering av klassen. Les artikkelen for å forstå detaljene om både private og beskyttede tilgangspesifikasjoner.