试卷名称:2011 练习题 试卷说明:练习题综合
命题教师:北京邮电大学世纪学院 计算机科学与技术系
一、单项选择题(总分 45)
1. (分值:0.2 分)下列关于运算符重载的描述中,错误的是( A: ::运算符不能重载
B: 类型转换运算符只能作为成员函数重载
C: 将运算符作为非成员函数重载时必须定义为友元 D: 重载[ ]运算符应完成 R? 下标访问 R? 操作 序号:16 难度:2 考查点:重载
)。
2. (分值:0.2 分)将运算符重载为类成员函数时,其参数表中没有参数,说明该运算符是 A: 不合法的运算符 B: 一元运算符 C: 无操作数的运算符 D: 二元运算符
序号:18 难度:1 考查点:重载
3. (分值:0.2 分)下列关于虚基类的描述中,错误的是( A: 使用虚基类可以消除由多继承产生的二义性 B: 构造派生类对象时,虚基类的构造函数只被调用一次 C: 声明 R? class B : virtual public AR? 说明类 B 为虚基类 D: 建立派生类对象时,首先调用虚基类的构造函数 序号:19 难度:2 考查点:多态性与虚函数
)。
4. (分值:0.2 分)Sample 是一个类,执行下面语句后,调用 Sample 类的构造函数的次数 是 Sample a[2], *P = new Sample; A: 0 B: 1 C: 2 D: 3
序号:20 难度:1 考查点:类与对象
5. (分值:0.2 分)下列关于 C++流的描述中,错误的是 A: cout>>'A'表达式可输出字符 A B: eof()函数可以检测是否到达文件尾
C: 对磁盘文件进行流操作时,必须包含头文件 fstream
D: 以 ios_base::out 模式打开的文件不存在时,将自动建立一个新文件 序号:26 难度:1 考查点:输入输出流
6. (分值:0.2 分)下列字符串中可以用作 C++标识符的是 A: 2009var B: goto
C: test-2009 D: _123
序号:32 难度:1 考查点:C++基础知识
7. (分值:0.2 分)有如下类定义: class XX {
int xdata;
public:
XX(int n=0) : xdata(n){} };
class YY : public XX {
int ydata;
public:
YY(int m=0, int n=0) : XX(m), ydata(n){}
};
YY 类的对象包含的数据成员的个数是( )。
A: 1 B: 2 C: 3 D: 4
序号:35 难度:1 考查点:类与对象
8. (分值:0.2 分)下列关于运算符函数的描述中,错误的是( A: 运算符函数的名称总是以 operator 为前缀 B: 运算符函数的参数可以是对象 C: 运算符函数只能定义为类的成员函数
D: 在表达式中使用重载的运算符相当于调用运算符重载函数 序号:36 难度:2 考查点:重载
9. (分值:0.2 分)有如下程序: #include
int k; protected: