Kapsülleme

[vc_row][vc_column][vc_column_text]

Kapsülleme kısaca sınıf içerisindeki verilere dışarıdan erişimin kapatılmasıdır. Verilere erişim sınıf üye fonksiyonları tarafından yapılmalıdır.

class insan{
public:
    int boy;
    int kilo;
    float vki();
};
float insan::vki(){

    return (1.0*(kilo)) / (boy*boy);
}
int main(){
    insan i1;
    i1.boy=150;
    i1.kilo=55;

    cout<<i1.vki();
    return 0;
}

 

Görüldüğü üzre i1 nesnesinin değişkenlerine dışarıdan atama yapıp değiştirebiliyoruz.Bunun olmaması için atamaları kurucu fonksiyonumuz içinde yapıp,değişkenleri dışarıya karşı kapsülleyebiliriz.

class insan{
private:
    int boy;
    int kilo;
public:
    insan(int boy1,int kilo1):boy(boy1),kilo(kilo1){}
    float vki();
};
float insan::vki(){

    return (1.0*(kilo)) / (boy*boy);
}
int main(){
    insan i1(185,90);
    cout<<i1.vki();
    return 0;
}

 

İşte boy ve kilo değişkenlerini private tanımlayıp,sadece nesne oluştururken değerlere atama yapabilmeyi zorunlu kıldık.Eğer ki nesne değişkenlerine dışarıdan erişilmeye çalışılınırsa derleyici hata verecektir.

[/vc_column_text][/vc_column][/vc_row][vc_row][vc_column width=”1/2″][vc_btn title=”Önceki Ders” color=”green” align=”left” i_icon_fontawesome=”fa fa-chevron-left” add_icon=”true” link=”url:https%3A%2F%2Fyapbenzet.org.tr%2Fcpp-nesnelerin-tanitimi-siniflar%2F|||”][/vc_column][vc_column width=”1/2″][vc_btn title=”Sonraki Ders” color=”green” align=”right” i_align=”right” i_icon_fontawesome=”fa fa-chevron-right” add_icon=”true” link=”url:https%3A%2F%2Fyapbenzet.org.tr%2Fcpp-const-nesneler%2F|||”][/vc_column][/vc_row]