C++继承:公有,私有,保护

来源:互联网 发布:js 选择文件路径 编辑:程序博客网 时间:2024/04/28 20:31

公有继承:

基类的公共,保护成员均保持状态被继承,可以被访问。私有成员不可见。

保护继承:

基类的公共,保护成员均成为子类的保护成员,只能被成员函数或友元函数访问。私有成员不可见。

私有继承:

基类的公共,保护成员均成为子类私有成员,可被子类成员函数访问。私有成员不可见。


公有继承:

(1)基类成员对其对象的可见性

公有成员可见,其他不可见。此处保护成员与私有成员相同;

(2)基类成员对其派生类的可见性

公有成员与保护成员可见,私有不可见。保护成员与公有成员相同;

(3)基类成员对其派生类的对象的可见性

公有成员可见,保护成员不可见。

公有继承派生类的对象可以访问基类公有成员,成员函数可以访问保护成员。即派生类的对象与成员函数的访问是不同的。


保护继承:

(1)基类成员对其对象的可见性

公有成员可见,其他不可见;

(2)基类成员对其派生类的可见性

公有成员与保护成员可见,私有不可见

(3)基类成员对其派生类的对象的可见性

均不可见。

私有继承:

(1)基类成员对其对象的可见性

公有成员可见,其他不可见。

(2)基类成员对其派生类的可见性

公有成员与保护成员可见,私有不可见

(3)基类成员对其派生类的对象的可见性

均不可见。

私有继承时,基类的成员无法由派生类进一步继承下去。

0 0
原创粉丝点击