1、4.派生类对象对它的基类成员中()是可以访问的。A. 公有继承的私有成员B. 公有继承的保护成员C. 公有继承的公有成员D. 私有继承的公有成员5.定义p并使p指向动态空间中的包含30个整数的数组所使用的定义语句为()。A. int*p=newint30B. int*p=newint(30)C. int*p=new30int*p=new30D. *p=newint30A6.多继承时对象的构造顺序中包含如下4步:所有非虚基类的构造函数按照它们被继承的顺序构造;所有虚基类的构造函数按照它们被继承的顺序构造;所有子对象的构造函数按照它们声明的顺序构造;派生类自己的构造函数体;这4个步骤的正确顺序是(
2、)。A. B. C. D. 7.若函数原型为voidFun(intx,inty=6,intchar=a),则下列调用错误的是()。A. Fun(5)B. Fun(5, b)C. Fun(5,8)D. Fun(2,4, 8.在横线处填入语句()后,下列语句序列能够正确执行。int*ptr;deleteptr;A. ptr=new int(5);B. ptr=new int5;C. ptr=new int;D. ptr=malloc(5);9.下列程序的输出结果是()。#include<iostream.h>classPartpublic:Part(intx=0):val(x)cout
3、&val;Part()cout&private:intval;classWholepublic:Whole(intx,inty,intz=0):p2(x),p1(y),val(z)cout&Whole()cout&Partp1,pA. 123321B. 213312C. 213D. 12312310.print()函数是某类中无返回值的常成员函数,下列表示中,正确的是()。A. void print() constB. const void print()C. void const print()D. void print(const)11.在下面的类定义中,横线处应填入的内容是()。clas
4、sMyClassprivate:staticintcount;count=0;A. intB. static intC. int MyClassD. static int MyClass:12.复制构造函数的参数通常为()A. 某个对象名B. 某个对象的成员名C. 某个对象的引用名D. 某个对象的指针名13.下列描述中,错误的是()。A. 析构函数中调用虚函数采用静态联编B. 对虚析构函数的调用可以采用动态联编C. 当基类的析构函数是虚函数时,其派生类的析构函数也一定是虚函数D. 构造函数可以声明为虚函数14.有如下类声明:classMyClasspublic:MyClass()cout&1;
5、执行语句MyClassa,b2,*p2;后,程序的输出结果是()。A. 11B. 111C. 1111D. 1111115.关于封装,下列说法中不正确的是()。A. 通过封装,对象的全部属性和操作结合在一起,形成一个整体B. 通过封装,一个对象的实现细节被尽可能地隐藏起来(不可见)C. 通过封装,每个对象都成为相对独立的实体D. 通过封装,对象的属性都是不可见的16.下列关于构造函数和析构函数的描述中,错误的是()。A. 构造函数可以重载B. 析构函数名与类名相同C. 构造函数中可以设置参数的默认值D. 类中只有一个析构函数17.C+中用于实现运行时多态性的是()。A. 内联函数B. 重载函数
6、C. 静态函数D. 虚函数18.下列关于继承的描述中,错误的是()。A. 派生类对象不能访问基类的保护成员B. 派生类对基类成员的访问权限随着继承方式而改变C. 派生类成员可以访问基类的私有成员D. 派生类继承了基类的所有成员19.下列函数中,不是类的成员函数的是()。B. 友元函数C. 析构函数D. 复制构造函数20.下列语句中,会产生编译错误的是()。A. int x=5; int &ref=x;B. const int size;C. int x=5; x+;D. const int size=100;21.A. 公有继承时基类中的public成员在派生类中仍是public的B.
7、 公有继承时基类中的private成员在派生类中仍是private的C. 私有继承时基类中的public成员在派生类中是private的D. 保护继承时基类中的public成员在派生类中是protected的22.A;MyClass(charc)cout&c;MyClass()cout&Bintmain()MyClassp1,*p2;p2=newMyClass(X);deletep2;return0;A. ABXB. ABXBC. AXBD. AXBB23.不可以成为类的数据成员的是_A. 自身类的对象B. 另一个类的对象C. 自身类的指针或引用D. 其他基本数据类型24.下列描述中,()不是
8、面向对象系统包含的要素。A. 对象B. 类C. 继承D. 函数25.执行下列程序后的输出结果是()。intfun1(intx)return+x;intfun2(int&x)return+x;intmain()inta=0,b=0,c=0;c=fun1(a)+fun2(b);cout&a&b&c&endl;A. 002B. 012C. 102D. 11226.在派生类中重新定义虚函数时,除了()方面,其他方面都必须与基类中相应的虚函数保持一致。A. 参数个数B. 参数类型C. 函数名称D. 函数体27.有如下类定义:intgetRef()constreturn&a;intgetValue()co
9、nstreturna;voidset(intn)consta=n;friendvoidshow(MyClassobj)constcout&下列函数中,定义正确的是()。A. getRefB. getValueC. setD. show28.下列关于this指针的描述中,正确的是()。A. 任何与类相关的函数都有this指针B. 类的成员函数都有this指针C. 类的友元函数都有this指针D. 类的非静态成员函数都有this指针29.设置虚基类的目的是()。A. 简化程序B. 消除二义性C. 提高运行效率D. 减少目标代码30.设置虚基类的目的是_。A. 简化程序;B. 消除二义性;C. 提高
10、运行效率;D. 减少目标代码;31.下列对引用的陈述中不正确的是()。A. 每一个引用都是其所引用对象的别名,因此必须初始化B. 形式上针对引用的操作实际上作用于它所引用的对象C. 一旦定义了引用,一切针对其所引用对象的操作只能通过该引用间接进行D. 不需要单独为引用分配存储空间32.在下列函数原型中,可以作为类A构造函数的是()。A. void A(int);B. int A();C. A(int) const;D. A(int);33.下列关于运算符重载的描述中,_是正确的。A. 运算符重载可以改变运算数的个数;B. 运算符重载可以改变优先级;C. 运算符重载可以改变结合性;D. 运算符重载不可以
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1