请问C++中继承时公有继承,保护继承与私有继承有何区别?谢谢

如题所述

公有继承时基类中各成员属性保持不变,基类中private成员被隐藏。派生类的成员只能访问基类中的public/protected成员,而不能访问private成员;派生类的对象只能访问基类中的public成员。
私有继承时基类中各成员属性均变为private,并且基类中private成员被隐藏。派生类的成员也只能访问基类中的public/protected成员,而不能访问private成员;派生类的对象不能访问基类中的任何的成员。
保护继承时基类中各成员属性均变为protected,并且基类中private成员被隐藏。派生类的成员只能访问基类中的public/protected成员,而不能访问private成员;派生类的对象不能访问基类中的任何的成员。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-07-24
公有继承,也就是表示派生类能够利用基类的数据和成员函数。
保护继承,表示派生类只能够利用基类中声明为公有的数据和成员函数。
私有继承,派生类是不能够继承基类的数据和成员函数的。
第2个回答  2020-06-09
public继承并不是说不继承父类的private成员,是继承的,只是在子类的成员函数中无法访问父类的私有成员。
相似回答