单选题下面叙述错误的是(  )。A 派生类可以使用private派生B 对基类成员的访问必须是无二义性的C 基类成员的访问能力在派生类中维持不变D 赋值兼容规则也适用于多继承的组合

题目
单选题
下面叙述错误的是(  )。
A

派生类可以使用private派生

B

对基类成员的访问必须是无二义性的

C

基类成员的访问能力在派生类中维持不变

D

赋值兼容规则也适用于多继承的组合

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

下列有关继承和派生的叙述中,正确的是( )。

A.如果一个派生类公有继承其基类,则该派生类对象可以访问基类的保护成员

B.派生类的成员函数可以访问基类的所有成员

C.基类对象可以赋值给派生类对象

D.如果派生类没有实现基类的一个纯虚函数,则该派生类是一个抽象类


正确答案:D
私有继承方式为基类的公用成员和保护成员在派生类中成了私有成员,其私有成员仍为基类私有,但派生类对象可以访问基类的保护成员,所以基类对象不能赋值给派生类对象。抽象类是指含有纯虚拟函数的类,所以选项D正确。

第2题:

下列关于派生类和基类的描述中,正确的是( )。

A) 派生类成员函数只能访问基类的公有成员

B) 派生类成员函数只能访问基类的公有和保护成员

C) 派生类成员函数可以访问基类的所有成员

D) 派生类对基类的默认继承方式是公有继承

A.

B.

C.

D.


正确答案:B

第3题:

下面描述中,错误的是()。

A.在派生类中不可见的成员要变成可访问的,需要进行访问声明

B.在基类定义的public成员在保护继承的派生类中可见,也能在类外被访问

C.在基类定义的public和protected成员在私有继承的派生类中可见,在类外可以被访问

D.在基类定义的public和protected成员在保护继承的派生类中可见


正确答案:BC

第4题:

下面叙述错误的是 ______。

A.基类的protected成员在派生类中仍然是protected

B.基类的protected成员在private派生类中仍然是protected的

C.基类的protected成员在private派生类中是private的

D.基类的protected成员不能被派生类的对象访问


正确答案:A

第5题:

下列描述中错误的是( )。

A.派生类可以使用private派生

B.对基类成员访问必须是无二义性的

C.赋值兼容规则也适合于多继承

D.基类和派生类中存在同名函数,将出现二义性


正确答案:D
解析:基类和派生类存在同名函数,符合支配规则,不存在二义性。

第6题:

下面叙述不正确的是

A.基类的保护成员在派生类中仍然是保护的成员

B.基类的保护成员在公有派生类中仍然是保护的

C.基类的保护成员在私有派生类中仍然是私有的

D.对基类成员的访问必须是无二义性


正确答案:A
解析:C++语言中如果基类的成员是保护的,它被继承后在子类中该成员可能是保护的,也可能不是,主要看继承的权限是public还是protected或 private的。

第7题:

下面关于继承机制的描述中,不正确的是( )。

A.派生类不仅可以继承基类的成员,也可以添加自己的成员

B.设置protected成员是为派生类访问基类成员之用

C.采用不同的继承方式,将限制派生类对基类成员的访问

D.采用私有继承,派生类只能得到基类的公有成员


正确答案:D
解析:本题主要考察C++中继承机制的特点。C++中允许利用已有的数据类型来定义新的数据类型,这种机制称为继承机制,并称已存在的用来派生新类的类称为基类,由已存在的类派生出的新类称为派生类。派生类有3种继承方式可以采用,即public、private和protected方式。派生类除了继承基类中的数据成员和成员函数外,还可以添加具有自身特点的成员,这是继承机制的真正用意所在。因此选项A的叙述正确。采用不同的继承方式,将限制派生类对基类成员的访问权限,因此选项C的叙述正确。对于类本身,protected成员和private成员对外的访问权限是相同的,即外界函数都无法直接访问这两类成员。对于类作为基类被继承产生派生类时,protected成员又和public成员性质相同,即在所有继承方式下都可以被派生类所继承,在public继承时可以被派生类对象访问,在protected和private继承方式下无法被派生类的子类访问。这也正是C++设置protected访问权限成员的真正用途,即为派生类继承基类隐蔽成员之用途。因此选项B的叙述正确。

第8题:

下列关于派生类和基类的描述中,正确的是( )。

A.派生类成员函数只能访问基类的公有成员

B.派生类成员函数只能访问基类的公有和保护成员

C.派生类成员函数可以访问基类的所有成员

D.派生类对基类的默认继承方式是公有继承


正确答案:B
B。【解析】派生类成员函数不能访问基类的private成员,只能由基类的对象来访问。这才体现了C++的数据封装特性。

第9题:

下列叙述中,错误的是( )。

A.派生类可以使用private派生

B.对基类成员的访问必须是无二义性的

C.基类成员的访问能力在派生类中维持不变

D.赋值兼容规则也适用于多继承的组合


正确答案:C
解析:在建立派生类时,并不是简单地把基类的私有成员直接作为派生类的私有成员,把基类的公用成员直接作为派生类的公用成员。涉及如何确定基类的成员在派生类中的访问属性问题,不仅要考虑对基类成员所声明的访问属性,还要考虑派生类所声明的对基类的继承方式,根据这两个因素共同决定基类成员在派生类中的访问属性。所以本题选择选项C)。

第10题:

下面叙述错误的是( )。

A.基类的protected成员在派生类中仍然是protected的

B.基类的protected成员在public派生类中仍然是protected的

C.基类的protected成员在private派生类中是privated的

D.基类的protected成员不能被派生类的对象访问


正确答案:A

更多相关问题