下面说法是否正确?基类公有成员在私有派生类中是私有的;基类的不可访问对象在公有派生类中可访问。

如题所述

第1个回答  2014-06-05
第一句是对的,第二句错了,基类的不可访问对象在派生类中是不可访问的追问

成员的访问能力在私有派生类和公有派生类是不同的;在根类和派生类中有4种访问级别;在根类和派生类中有3种访问级别。上面正确的是哪些?为什么?

追答

你自己找本经典的C++书籍看就知道了,这些属于基础概念问题,只要看书就能明白的。不管派生类还是根类,只要她是个类,她就是可以有3中访问级别:public、protected、private,目前来说没有第4种访问控制。
1、 公有类型成员用public关键字声明,任何一个来自类外部的访问都必须通过这种类型的成员来访问(“对象.公有成员”)。公有类型声明了类的外部接口。
2、私有类型成员用private声明(若私有类型成员紧接着类名称,可省略关键字),私有类型的成员只允许本类的成员函数来访问,而类外部的任何访问都是非法的。这样完成了私有成员的隐蔽。
3、在不考虑继承的情况下, 保护类型(protected)的性质和私有类型的性质一致。即保护类型和私有类型的性质相似,其差别在于继承过程中对产生的新类影响不同。
根据私有派生类和公有派生类的区别,可知道基类成员如果全部都是private的时候基类成员的访问能力在私有派生类和公有派生类是相同的,如果基类成员有public或者protected的时候,基类成员的访问能力在私有派生类和公有派生类是不同的

本回答被提问者采纳
相似回答