类的三种继承访问方式

类的继承有三种方式,其一为公有继承/其二为私有继承/其三为保护集成。其继承原理大致如下代码:
class A{  
public: //公有成员
private://私有成员
product:  //保护成员
 
};//建立一个基类,即继承的类
 
1.公有继承:
class B:public A{
 
};//以公有方式继承A类,则A类中的成员属性在继承类中保持不变。
2.私有继承:
class B:private A{
 
};//以私有方式继承A类,则A类中的成员属性在继承类中需要该变。A类中的公有成员在B类变成私有成员,保护成员也变成私有成员,自然私有成员仍是私有成员。其中无关键字private,则系统默认私有继承。
 
3.保护继承:
class B:product A{
 
};//以保护方式继承A类,则A类中的成员属性在继承类中需要该变。A类中的公有成员在B类变成保护成员,保护成员不做改变,私有成员仍是私有成员。
 
内部访问:则为类中的函数调用这些成员,如:
class B:public A{
public:
void inter(){
//此处可调用基类公有成员
}
};
对象访问:则为建立类的对象,如:
int main(){
B object;//类B建立对象为object,以该对象访问所                   //提成员
return 0;
}
其具体访问方式 如下总结:


公有继承的访问规则
类中的成员函数 私有成员 公有成员 保护成员
内部访问 不可访问 可访问 可访问
对象访问 不可访问 可访问 不可访问
私有继承的访问规则
类中的成员函数 私有成员 公有成员 保护成员
内部访问 不可访问 可访问 可访问
对象访问 不可访问 不可访问 不可访问
保护继承的访问规则
类中的成员函数 私有成员 公有成员 保护成员
内部访问 不可访问 可访问 可访问
对象访问 不可访问 不可访问 不可访问
原文地址:https://www.cnblogs.com/tangjunjun/p/11676667.html