试 题 专 用 纸(附页)………………………………装………………………………订……………………………线……………………………若执行语句:Point a(2), b[3], *c[4]; 则 Point 类的构造函数被调用的次数是( ) 。 A)2 次 A)运算符重载可以改变操作数的个数 A)私有继承 A)派生类、子对象类、基类 B)3 次 B)运算符重载可以改变优先级 B)非私有继承 B)子对象类、基类、派生类 C)4 次 C)运算符重载可以改变结合性 C)保护继承 C)基类、子对象类、派生类 D)5 次 D)运算符重载不可以改变语法结构 D)公有继承 D)基类、派生类、子对象类
(30)下列关于运算符重载的描述中, )是正确的。 ( (31)定义派生类时,若不使用关键字显式地规定采用何种继承方式,则默认方式为( )。 (32)建立一个有子对象的派生类对象时,各构造函数体的执行次序为( )。
(33)下列对派生类的描述中, )是错的。 ( A)一个派生类可以作为另一个派生类的基类 C)派生类的成员除了它自己的成员外,还包含了它的基类的成员 (34)有如下类声明: B)派生类至少有一个基类 D)派生类中继承的基类成员的访问权限到派生类保持不变
class XA{ int x; public: XA(int n){x=n;} }; class XB:public XA{ int y; public: XB(int a,int b); };在构造函数 XB 的下列定义中,正确的是( )。A)XB::XB(int a,int b):x(a),y(b){} C)XB::XB(int a,int b):x(a),XB(b){} (35)下列关于赋值兼容规则的描述中,错误的是( A)赋值兼容规则在子类型情况下才可以使用 C)公有继承下,派生类对象可以对基类对象引用进行初始化 )。 B)公有继承下,派生类对象不可以给基类对象赋值 D)公有继承下,派生类对象的地址可以赋给基类的对象指针 B)XB::XB(int a,int b):XA(a),y(b){} D)XB::XB(int a,int b):XA(a),XB(b){}
(36)在带有虚基类的多层派生类构造函数的成员初始化列表中都要列出虚基类的构造函数,这样对虚基类的子对象初始化( ) 。 A)与虚基类下面的派生类个数有关 (37)下列运算符中, )运算符不能重载。 ( A)&& B)[ ] C):: D)new B)多次 C)二次 D)一次
(38)关于纯虚函数和抽象类的描述中, )是错误的。 ( A)纯虚函数是一种特殊的虚函数,它没有具体的实现 B)抽象类是指具有纯虚函数的类。
C)若一个基类中说明了纯虚函数,这该基类的派生类一定不再是抽象类 D)抽象类只能作为基类来使用,其纯虚函数的实现由派生类给出 (39)对于语句 cout<<endl<<x;中的各个组成部分,下列叙述中错误的是( ) 。 A)"cout"是一个输出流对象 (40)有如下程序: #include <iostream> #include <iomanip> using namespace std; void main() { cout.fill('*'); cout << left << setw(4) << 123 << "OK" << endl; }执行这个程序的输出结果是( ) 。 A)123*OK B)123*OK** C)*123OK D)*123**OK B)"endl"的作用是输出回车换行 C)"x"是一个变量 D)"<<"称作提取运算符
共 8
页
第 4
页