17-成员访问权限

296 阅读1分钟

写在前面

成员的访问权限,就像是一个屋子里的灯的开关,开关放不放屋的外面。放在外面就可以控制,放在屋内,就看不到了。

名词解释

◼ 成员访问权限、继承方式有3种 
public:公共的,任何地方都可以访问(struct默认) 
protected:子类内部、当前类内部可以访问 
prvate:私有的,只有当前类内部可以访问(class默认)

码上建功

//先建一个基类
sclass Person {
    int m_no;
    int m_age;
    void run() {
    }
};
m_no 和 m_age属性都只能在Person内部使用

class Person {
    int m_no;
public:
    int m_age;
    void run() {
    }
};
m_no属性都只能在Person内部使用
m_age属性可以在外部访问

Person person;
person.m_age = 10;
person.run();
public: 修饰后的都是public
直到遇到protected 或是prvate修饰符
class Person {
    int m_no;
public:
    int m_age;
protected:
    void run() {
    }
};

补充

◼ 子类内部访问父类成员的权限,是以下2项中权限最小的那个 
成员本身的访问权限
上一级父类的继承方式
◼ 开发中用的最多的继承方式是public,这样能保留父类原来的成员访问权限
◼ 访问权限不影响对象的内存布局

完整代码demo,请移步GitHub:DDGLearningCpp