C++-olioohjelmoinnissa kapselointi on tekniikka tietojen piilottamiseksi ilmoittamalla se määritetyn luokan yksityisellä attribuutilla. Jäsenten yksityiset tiedot eivät ole saatavilla luokan ulkopuolelta.
Mitä Getter-funktiot ovat C++:ssa?
Kun C++:n yksityisiä datajäseniä on käytettävä kapseloinnin aikana muokkaamista varten, getterifunktioita kutsutaan Getter-funktioiksi ja yksityisten muuttujien arvon hakemiseen C++:ssa käytetään getterifunktioita. Getter-funktion käyttö tekee koodin luettavuuden helpoksi ja mahdollistaa tietojen suojauksen, jolloin se on vain luokan asianomaisten jäsenten käytettävissä.
Esimerkki 1
Tämä koodi havainnollistaa getter()-funktion käyttöä C++:ssa:
#include
käyttämällä nimiavaruus std ;
luokkaa Tuote {
yksityinen :
int hinta ;
julkinen :
Tuote ( int s ) {
hinta = s ;
}
int getPrice ( ) {
palata hinta ;
}
} ;
int pää ( ) {
Tavaran lompakko ( kaksikymmentä ) ;
cout << 'Lompakon hinta on $' << lompakko. getPrice ( ) ;
palata 0 ;
}
Tässä lähdekoodissa nimikeluokka määritellään ja int-hinta ilmoitetaan sen yksityiseksi datajäseneksi. GetPrice()-funktiota käytetään hinnan arvon noutamiseen, koska yksityisenä jäsenenä ei pääse luokan ulkopuolelle ilman get()-funktiota. Pääfunktiossa getPrice()-funktiota kutsutaan objektilta palauttamaan arvo.
Lompakon hinta saadaan käyttämällä get()-funktiota, joka on painettu 20 dollariksi.
Esimerkki 2
Tämä esimerkki havainnollistaa ympyrän pinta-alan laskemista get()-funktiolla C++:ssa:
#include
käyttämällä nimiavaruus std ;
luokkaa Ympyrä {
yksityinen :
kellua alueella ;
kellua säde ;
julkinen :
mitätön getRadius ( )
{
cout << 'Syötä ympyrän säde:' ;
syöminen >> säde ;
}
mitätön etsi alue ( )
{
alueella = 3.14 * säde * säde ;
cout << 'Ympyrän alue =' << alueella ;
}
} ;
int pää ( )
{
Ympyrä ym ;
cir. getRadius ( ) ;
cir. etsi alue ( ) ;
}
Tässä lähdekoodissa Circle Class on määritelty ja ympyrän parametrit on määritelty yksityisiksi jäseniksi. Tämän ympyrän alueen löytämiseksi näitä jäseniä käytetään get()-funktiolla:
Johtopäätös
Arkaluontoisten tietojen käsittelyssä C++:ssa käytetään tietojen kapselointitekniikkaa. Yksityisellä attribuutilla ilmoitetut luokan jäsenet eivät pääse käsiksi luokan ulkopuolelle ja ovat siten suojattuja Kun kapseloinnin aikana olevia yksityisiä datajäseniä on käytettävä muokkausta varten, kutsutaan getter-funktiot. C++:n Getter-funktioita käytetään yksityisten muuttujien arvon hakemiseen muokkausta varten.