概述
继承类型 | 基类成员访问说明符 | 派生类成员访问说明符 |
public | public | public |
protected | private | |
private | inaccessiable | |
protected | public | protected |
protected | protected | |
private | inaccessiable | |
private | public | private |
protected | private | |
private | inaccessible |
子类中的友元函数只能通过子类对象去访问基类的protected成员
class Base {
protected:
int prot_mem = 10;
};
class Child : public Base {
public:
int getMember() { return prot_mem; }
friend int getMember1( Child child);
friend int getMember2(Base base);
};
int getMember1(Child child)
{
return child.prot_mem; //correct, can access
}
int getMember2(Base base)
{
return base.prot_mem;// error C2248: 'Base::prot_mem': cannot access protected member declared in class 'Base'
}
最后
以上就是秀丽美女为你收集整理的C++ 继承中的访问控制的全部内容,希望文章能够帮你解决C++ 继承中的访问控制所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复