09-封装

140 阅读1分钟

写在前面

面向对象的三大特性之一--封装。

名词解释

所谓封装就是将某些东西包装盒隐藏起来,让外界无法直接使用,只能通过某些特定的方式才能访问。
封装的目的是增强安全性和简化编程,使用者不必了解具体的实现细节,而只是通过外部接口以及特定的访问权限来使用类的成员 --摘自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++大神就绕吧,非喜勿喷,毕竟这是个人的学习笔记📒