09-封裝

東閣堂主發表於2019-02-11

寫在前面

物件導向的三大特性之一--封裝。
複製程式碼

名詞解釋

所謂封裝就是將某些東西包裝盒隱藏起來,讓外界無法直接使用,只能通過某些特定的方式才能訪問。
封裝的目的是增強安全性和簡化程式設計,使用者不必瞭解具體的實現細節,而只是通過外部介面以及特定的訪問許可權來使用類的成員 --摘自web
複製程式碼

碼上建功

成員變數私有化,提供公共的getter和setter給外界去訪問成員變數

struct Person {
//限制私有屬性
private:
    int m_age;
//公開屬性,必須寫public,因為不寫的話,會被上面的private修飾,變成私有屬性
public:
    void setAge(int age) {
        this->m_age = age;
    }

    int getAge() {
        return this->m_age;
    }
};


int main() {
    Person person;
    person.setAge(-20);
    cout << person.getAge() << endl;
}
列印結果:
-20

複製程式碼

裝逼一下

在C\C++中,定義在函式外面的就是全域性變數
全域性變數的特點:整個程式執行過程中都存在,譬如下面:
int age;
Person p;
複製程式碼

完整程式碼demo,請移步GitHub:DDGLearningCpp

當然C++大神就繞吧,非喜勿噴,畢竟這是個人的學習筆記?

相關文章