面向对象程序设计复习题

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一.选择题

1.对类的构造函数和析构函数描述正确的是()。

A.构造函数可以重载,析构函数不能重载

B.构造函数不能重载,析构函数可以重载

C.构造函数可以重载,析构函数也可以重载

D.构造函数不能重载,析构函数也不能重载

2.继承具有(),即当基类本身也是某一个类派生类时,底层的派生类也会自动继承间接基类的成员。 A)规律性 B.传递性 C.重复性 D.多样性

3.假设OneClass为一个类,则该类的拷贝初始化构造函数的声明语句为()。

A.OneClass(OneClass p);

B. OneClass& (OneClass p);

C. OneClass(OneClass & p);

D. OneClass (OneClass *p);

4.对于结构中定义的成员,其默认的访问权限为()。

A.public

B. protected

C.private

D. static

5.下面对静态数据成员的描述中,不正确的是()。

A.静态数据成员可以在类体内进行初始化

B.静态数据成员不可以在类体内进行初始化

C.静态数据成员能受private控制符的作用

D.静态数据成员调用前必须初始

6. C++中的类有两种用法:一种是类的实例化,即生成类对象,并参与系统的运行;另一种是通过()派生了新的类。

A.复用

B.继承

C.封装

D.引用

7. 假定AA为一个类,a为该类公有的数据成员,x为该类的一个对象,则访问x对象中数据成员a的格式为()。

A. x(a)

B. x[a]

C. x->a

D. x.a

9. 对于一个类的构造函数,其函数名与类名( )。

A. 完全相同

B. 基本相同

C. 不相同

D. 无关系

10. 一个类的构造函数通常被定义为该类的( )成员。

A. 公有

B. 保护

C. 私有

D. 友元

11. 一个类的析构函数通常被定义为该类的( )成员。

A. 私有

B. 保护

C. 公有

D. 友元

12. 一个类的静态数据成员所表示属性 ( )。

A. 是类的或对象的属性

B. 只是对象的属性

C. 只是类的属性

D. 类和友元的属性

13.类的析构函数的作用是()。 D

A.一般成员函数 B.类的初始化 C.对象初始化 D.删除对象的善后工作

16.下列对基类和派生类关系的描述中,错误的是()。

A.派生类是基类的具体化 B.派生类是基类的子集

C.派生类是基类定义的延续 D.派生类是基类的组合

17.下列对派生类的描述中,错误的是()。 D

A.一个派生类可以作为另一个派生类的基类 B.派生类至少有一个基类

C.派生类的缺省继承方式是private D.派生类只继承了基类的公有成员和保护成员

18.下列对继承的描述中,错误的是()。 D

A.析构函数不能被继承

B.派生类也是基类的组合

C.派生类的成员除了它自己的成员外,还包含了它的基类的成员

D.派生类中继承的基类成员的访问权限到派生类保持不变

19.派生类的对象对它的基类成员中()是可以访问的。 A

A.公有继承的公有成员 B.公有继承的私有成员

C.公有继承的保护成员 D.私有继承的公有成员

20.下列说法错误的是()。 B

A.公有继承的基类中的public成员在派生类中仍是public的

B.公有继承的基类中的private成员在派生类中仍是private的

C.私有继承的基类中的public成员在派生类中仍是private的

D.保护继承的基类中的public成员在派生类中仍是protected的

21.下面叙述错误的是()。 A

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

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

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

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

22.下列对派生类的描述中,错误的是()。

A.一个派生类可以作为另一个派生类的基类

B.派生类至少有一个基类

C.派生类的缺省继承方式是private

D.派生类只含有基类的公有成员和保护成员

25.设置虚基类的声明中,正确的是()。

A.简化程序

B.消除二义性

C.提高运行效率

D.减少目标代码

26.关于虚函数的描述中,正确的是()。

A.虚函数是一个静态成员函数

B.虚函数是一个非成员函数

C.虚函数即可以在函数说明定义,也可以在函数实现时定义

D.派生类的虚函数与基类中对应的虚函数具有相同的参数个数和类型

27.下列描述中,()是抽象类的特征。

A.可以说明虚函数B.可以进行构造函数重载

C.可以定义友元函数D.不能说明其对象

28. 静态数据成员的初始化是在()中进行的。

A. 构造函数

B. 任何成员函数

C. 所属类

D. 全局区

?29. 当将一个类A或函数f()说明为另一个类B的友元后,类A或函数f()能够直接访问类B的()。

A. 只能是公有成员

B. 只能是保护成员

C. 只能是除私有成员之外的任何成员

D. 具有任何权限的成员

30. 在重载一个运算符时,其参数表中没有任何参数,这表明该运算符是()。

A. 作为友元函数重载的1元运算符

B. 作为成员函数重载的1元运算符

C. 作为友元函数重载的2元运算符

D. 作为成员函数重载的2元运算符

31. 关于运算符重载,下列说法正确的是()。

A. 重载时,运算符的优先级可以改变。

B. 重载时,运算符的结合性可以改变。

C. 重载时,运算符的功能可以改变。

D. 重载时,运算符的操作数个数可以改变。

32. 从一个基类派生出的各个类的对象之间( )。

A. 共享所有数据成员,每个对象还包含基类的所有属性

B. 共享部分数据成员,每个对象还包含基类的所有属性

C. 不共享任何数据成员,但每个对象还包含基类的所有属性

D. 共享部分数据成员和函数成员

33. C++的继承性允许派生类继承基类的()。

A. 部分特性,并允许增加新的特性或重定义基类的特性

B. 部分特性,但不允许增加新的特性或重定义基类的特性

C. 所有特性,并允许增加新的特性或重定义基类的特性

D. 所有特性,但不允许增加新的特性或重定义基类的特性

相关文档
最新文档