继承的特点:
public,protected,private三种继承方式,相应的也改变了基类成员的访问属性:
1、public继承:基类public成员、protected成员、private成员,三者的访问属性在派生类中分别变成:public、protected、private
派生类内部访问基类成员:允许、允许、不允许
派生对象外部访问基类成员:允许、不允许、不允许
2、protected继承:基类public成员、protected成员、private成员,三者的访问属性在派生类中分别变成:protected、protected、private
派生类内部访问基类成员:允许、允许、不允许
派生对象外部访问基类成员:不允许、不允许、不允许
3、private继承:基类public成员、protected成员、private成员,三者的访问属性在派生类中分别变成:private、private、private
派生类内部访问基类成员:允许、允许、不允许
派生对象外部访问基类成员:允许、不允许、不允许
无论哪种继承方式,有两点没变:
1、private成员只能被本类成员(类内)和友元访问,不能被派生类访问;
2、protected成员可以被派生类访问;
继承的格式,比如类B是类A的继承,如下:
class A{
public:
....
protected:
....
private:
....
};
class B : protected A{
public:
....
protected:
....
private:
....
};