9.对于私公有继承与私有继承,基类的公有和保护成员在派生类中将( )成员

C/C++ 公公有继承与私有继承、保护继承和私公有继承与私有继承的区别

   在c++的继承控制中有三种不同的控制权限,分别是public、protected和private定义派生类时,若不显示加上这三个关键字僦会使用默认的方式,用struct定义的类是默认public继承class定义的类是默认private继承。这和Java有很大的不同Java默认使用public继承,而且只有公公有继承与私有继承

C++中的继承方式有:
public、private、protected三种(它們直接影响到派生类的成员、及其对象对基类成员访问的规则)
(1)public(公公有继承与私有继承):继承时保持基类中各成员属性不变,並且基类中private成员被隐藏派生类的成员只能访问基类中的public/protected成员,而不能访问private成员;派生类的对象只能访问基类中的public成员
(2)private(私公有继承与私有继承):继承时基类中各成员属性均变为private,并且基类中private成员被隐藏派生类的成员也只能访问基类中的public/protected成员,而不能访问private成员;派生类的对象不能访问基类中的任何的成员
(3)protected(保护性继承):继承时基类中各成员属性均变为protected,并且基类中private成员被隐藏派生类的荿员只能访问基类中的public/protected成员,而不能访问private成员;派生类的对象不能访问基类中的任何的成员

如果缺省,默认为private继承

派生类对象要访问基类成员,必须在成员函数名前加上范围(类名::)这也适用于基类的成员变量。——

我要回帖

更多关于 公有继承与私有继承 的文章

 

随机推荐