Hva er privat og offentlig i C ++?


Beste svaret

Offentlig og privat er beskyttelsesmekanismer for klassene våre i C ++. Hvis en medlemsvariabel / funksjon er offentlig, kan den brukes hvor som helst i klassen. Hvis en medlemsvariabel / funksjon er privat, kan den bare nås av medlemsfunksjoner i den klassen.

Det er lurt å bruk privat når du kan. Vi vil ikke at sluttbrukeren skal ha tilgang til data som de ikke burde. Tenk deg for eksempel at jeg skriver et program som lar brukeren spille et kortspill. Først vil programmet skrive ut kortene spilleren har. Da vil brukeren legge inn hvilket kort de ønsker å spille. I dette tilfellet vil jeg sannsynligvis ønske at kortene skal være private på en eller annen måte. Jeg vil ikke at brukeren skal bytte kort og lage kort som ikke eksisterer.

For å få tilgang til private medlemsvariabler / funksjoner, kan du bruke offentlige funksjoner. For eksempel, hvis jeg har en privat variabel kalt int-nummer, kan jeg skrive en offentlig medlemsfunksjon for å få tilgang til den variabelen, kalt getNumber (). På denne måten kan jeg få tilgang til nummeret og bruke det hvor som helst, men jeg trenger ikke å bekymre meg for at nummeret blir brukt feil.

class Count{

public:

/*numberPub can be used anywhere in the class Count */

int numberPub;

/*This will return our private variable, numberPri. This way, we can return the variable, but we do not have to worry about access, such as a user modifying the value when they shouldn"t. */

int getNumberPri();

private:

/*numberPri cannot be used anywhere in the class Count. If we want to use numberPri in Count, we must use getNumberPri() to access it*/

int numberPri;

};

Svar

I C ++ privat betyr det at det bare kan brukes av klassen internt og ikke er tilgjengelig utenfor den nevnte klassen, mens offentlig betyr at den er tilgjengelig utenfor klassen.

For eksempel hvis du lager en forekomst av klassen din, kan du ikke få direkte tilgang til de private variablene og metodene, og det vil føre til en feil hvis du prøver å gjøre det.

class Example

{

private:

int private\_data;

int public\_data;

};

int main(int argc, char* argv[])

{

// create an instance

Example example;

// public variables and methods can be accessed

example.public\_data = 100;

// private variables and methods can only be accessed inside

// the class

// this next line will cause an error

example.private\_data = 1;

return 0;

}

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *