西安交通大学17年9月课程考试《面向对象程序设计(高起专)》作业考核试题 下载本文

内容发布更新时间 : 2024/11/8 0:35:56星期一 下面是文章的全部内容请认真阅读。

西安交通大学17年9月课程考试《面向对象程序设计(高起专)》作业考核试题 一、单选题

1、D 2、B 3、C 4、C 5、A 一、单选题

一、单选题(共 30 道试题,共 60 分。)V 1. 构造函数不具备的特征是( )。 A. 构造函数的函数名与类名相同 B. 构造函数可以重载

C. 构造函数可以设置默认参数 D. 构造函数必须指定类型说明 正确答案:D

2. 关于运算符重载,下列说法正确的是()。 A. 所有运算符都可以重载

B. 通过重载,可以使运算符应用于自定义的数据类型 C. 通过重载,可以创建原来没有的运算符号 D. 通过重载,可以改变运算符的优先级 正确答案:B

3. 关于运算符重载,下列说法正确的是( )。 A. 重载时,运算符的优先级可以改变。 B. 重载时,运算符的结合性可以改变。 C. 重载时,运算符的功能可以改变。

D. 重载时,运算符的操作数个数可以改变。 正确答案:C

4. 一个类的析构函数通常被定义为该类的()成员。 A. 私有 B. 保护 C. 公用 D. 友元

正确答案:C

5. 下列关于类的访问控制机制说法错误的是()。 A. 静态数据成员通常都定义为公有类型。

B. 一个对象的私有成员对于同类的另一个对象是可见的 C. 友元机制破坏了类的封装性。

D. 基类的保护成员对派生类新定义的成员函数是可见的。 正确答案:A

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

A. 部分特性,并允许增加新的特性或重定义基类的特性 B. 部分特性,但不允许增加新的特性或重定义基类的特性 C. 所有特性,并允许增加新的特性或重定义基类的特性 D. 所有特性,但不允许增加新的特性或重定义基类的特性 正确答案:C

7. 假定AB为一个类,则执行 “AB r1=r2;”语句时将自动调用该类的( )。 A. 无参构造函数 B. 带参构造函数

C. 赋值重载函数 D. 拷贝构造函数 正确答案:D

8. 关于消息,下列说法中不正确的是( )。

A. 发送消息的对象请求服务,接受消息的对象提供服务 B. 消息的发送者必须了解消息的接收者如何响应消息

C. 在C++中,消息的发送具体体现为对接收消息的对象的某个函数的调用 D. 每个对象只能接收某些特定格式的消息 正确答案:B

9. 一个类的构造函数通常被定义为该类的(??)成员。 A. 公用 B. 保护 C. 私有 D. 友元

正确答案:A

10. 假定一个类对象数组为A[n],当离开它定义的作用域时,系统自动调用该类析构函数的次数为( )。 A. 0 B. 1 C. n D. n-1

正确答案:C

11. 编译时的多态性使用什么获得?( ) A. 重载函数 B. 继承 C. 虚函数 D. B和C

正确答案:A

12. 下列的符号常变量定义中,错误的定义是( )。 A. const M=10; B. const int M=20; C. const char ch;

D. const bool mark=true; 正确答案:C

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

A. 在类中不能对所定义的数据成员进行初始化; B. 类的公有成员函数是类与外界的接口

C. 同一个类的两个对象占用相同的内存空间; D. 类实现数据隐藏。 正确答案:C

14. 类的析构函数是一个对象被( )时自动调用的。 A. 建立 B. 撤消 C. 赋值

D. 引用

正确答案:B

15. 派生类的构造函数的成员初始化列表中,不能包含()。 A. 基类的构造函数;

B. 派生类中子对象的初始化; C. 基类的子对象初始化;

D. 派生类中一般数据成员的初始化; 正确答案:C

16. 假定AB为一个类,则执行 “AB x(a,5);”语句时将自动调用该类的 ( )。 A. 带参构造函数 B. 无参构造函数 C. 复制构造函数 D. 赋值重载函数 正确答案:A

17. 类中定义的成员默认为(??)访问属性。 A. public B. private C. protected D. friend

正确答案:B

18. C++的输入输出不包括()。C A. 标准的输入输出 B. 文件的输入输出 C. 字符串输入输出

D. 显示屏和打印机的输入输出 正确答案:C

19. 基类和派生类可以分别称为()。 A. “大类”和“小类” B. “父类”和“子类” C. “小类”和“大类” D. “子类”和“父类” 正确答案:B

20. 定义p并使p指向动态空间中的包含30个整数的数组所使用的定义语句为( )。 A. int *p=new int[30]; B. int *p=new int(30); C. int *p=new [30]; D. *p=new int[30]; 正确答案:A

21. 派生类的对象对其基类中( )可直接访问。 A. 公有继承的公有成员 B. 公有继承的私有成员 C. 公有继承的保护成员 D. 私有继承的公有成员 正确答案:A