西安交大20春《面向对象程序设计》在线作业(随机)(2)
(单选题)1:下面关于引用的说法错误的是()。A:引用是被引用对象的别名
奥鹏西安交大作业QQ 5 1 5 2 2 4 9 8 6
答案来源www.openhelp100.com
B:对引用的修改就是对被引用对象的修改,反之亦然
C:引用不一定立即初始化
D:引用不能建立数组
正确答案:
(单选题)2:若有语句int*p=newint;int*pi;则以下语句中,执行时会造成delete[]p语句的执行出错的是()。
A:(*p)++;
B:p++;
C:pi=p;
D:pi=p+3;
正确答案:
(单选题)3:一个类的析构函数通常被定义为该类的()成员。
A:私有
B:保护
C:公用
D:友元
正确答案:
(单选题)4:函数重载是指()。
A:两个或两个以上的函数取相同的函数名,但形参的个数或类型不同
B:两个以上的函数取相同的名字和具有相同的参数个数,但形参的类型可以不同
C:两个以上的函数名字不同,但形参的个数或类型相同
D:两个以上的函数取相同的函数名,并且函数的返回类型相同
正确答案:
(单选题)5:下面关键字中()是定义模板的关键字。
A:public
B:static
C:class
D:template
正确答案:
(单选题)6:假定AB为一个类,则执行ABx;语句时将自动调用该类的()
A:有参构造函数
B:无参构造函数
C:拷贝构造函数
D:赋值构造函数
正确答案: 答案来源www.openhelp100.com
西交作业QQ 515224986
(单选题)7:从系统实现的角度看,多态性分为静态多态性和动态多态性。以下说法错误的是()。
A:静态多态性是编译时的多态性
B:函数重载实现的多态性是静态多态性
C:通过虚函数实现的多态性是静态多态性
D:动态多态性是运行时的多态性
正确答案:
(单选题)8:构造函数不具备的特征是()。
A:构造函数的函数名与类名相同
B:构造函数可以重载
C:构造函数可以设置默认参数
D:构造函数必须指定类型说明
正确答案:
(单选题)9:控制输出格式的控制符中,()是设置输出宽度的。
A:ws
B:ends
C:setfill
D:setw
正确答案:
(单选题)10:若需要使类中的一个指针成员指向一块动态存储空间,则通常在()函数中完成。
A:析构
B:构造
C:任一成员
D:友元
正确答案:
(单选题)11:如果一个类至少有一个纯虚函数,那么就称该类为_____。
A:抽象类
B:虚基类
C:派生类
D:其他都不对
正确答案:
(单选题)12:在类中声明转换函数时不能指定()
A:参数
B:访问权限
C:操作
D:标识符
正确答案:
(单选题)13:虚函数的定义是在基类中进行的,定义时需要冠以关键字()。
A:static
B:friend
C:virtual
D:public
正确答案:
(单选题)14:在一个类中可以对一个运算符进行()重载。
A:1种
B:2种以下
C:3种以上
D:多种
正确答案:
(单选题)15:设置虚基类的目的是()。
A:简化程序
B:消除二义性
C:提高运行效率
D:减少目标代码
正确答案:
(单选题)16:对于下面的两条语句,正确的描述是()。
MyObjecta(2),b(a),c;c=b=a;
A:拷贝构造函数执行了1次;
B:赋值运算符重载函数执行了3次;
C:拷贝构造函数函数执行了3次;
D:赋值运算符重载函数执行了1次;
正确答案:
(单选题)17:下列说法错误的是()。
A:在类中不能对所定义的数据成员进行初始化;
B:类的公有成员函数是类与外界的接口
C:同一个类的两个对象占用相同的内存空间;
D:类实现数据隐藏。
正确答案:
(单选题)18:下列关于运算符重载的描述中,()是正确的。
A:运算符重载可以改变运算数的个数;
B:运算符重载可以改变优先级;
C:运算符重载可以改变结合性;
D:运算符重载不可以改变语法结构。
正确答案:
(单选题)19:选出关于运算符重载的正确概念是()
A:所有的运算符都可以被重载
B:C++中可以定义新的运算符
C:重载运算符不能改变原有运算符的参数个数、优先级及结合性
D:凡是能被成员函数重载的运算符也一定能被友元函数重载
正确答案:
(单选题)20:下列关于虚基类的说法错误的是()。
A:有引入虚基类的目的是解决二义性的问题;
B:因为虚基类可被多个派生类继承,因此可以有多个副本以适应不同的派生类;
C:若某个类被说明为虚基类,则被重复继承的该类成员在派生类对象中只有一个副本;
D:在派生类对象创建时,要保证虚基类的构造函数只被调用一次。
正确答案:
(单选题)21:下列函数中,()是对文件进行读操作的。
A:read()
B:write()
C:tellg()
D:seekp()
正确答案:
(单选题)22:下列程序段不会发生二义性的是()。
A:intfun(doublep){...;}
B:intfun(floatp){...;}
floatfun(floatp){...;}floatfun(unsignedp){...;}
intx;intx;
x=fun(0);x=fun(0);
C:intfun(inti,intj=2){...;}
D:intfun(inti=2,intj=2){...;}
floatfun(inti){...;}intfun(int*p){...;}
coutfloatfun(floatp){...;} intx; x=fun(0);
B:intfun(floatp){...;}floatfun(unsignedp){...;} intx; x=fun(0);
C:intfun(inti,intj=2){...;}floatfun(inti){...;} cout<<fun(5);
D:intfun(inti=2,intj=2){...;}intfun(int*p){...;} cout<<fun(5);
正确答案:
(单选题)27:定义p并使p指向动态空间中的包含30个整数的数组所使用的定义语句为()。
A:int*p=newint;
B:int*p=newint(30);
C:int*p=new;
D:*p=newint;
正确答案:
(单选题)28:对于语句cin>>x;中各个组成部分,下列叙述中错误的是()。
A:;的作用是语句的结束
B:"cin"是一个输出流对象
C:">>"称作提取运算符
D:"x"是一个变量
正确答案:
(单选题)29:C++语言是从早期的C语言逐步发展演变而来的,与C语言相比,它在求解问题方法上进行的最大改进是()。
A:面向过程
B:面向对象
C:安全性
D:复用性
正确答案:
(单选题)30:下列对派生类的描述中,()是错误的。
A:一个派生类可以作为另一个类的基类
B:派生类至少有一个基类
C:派生类的成员除了它自己的成员外,还包含它的基类的成员
D:派生类中继承的基类成员的访问权限到派生类中保持不变
正确答案:
(判断题)31:常量不能作为左值使用。()
A:错误
B:正确
正确答案:
(判断题)32:在调用构造函数时不必给出实参的构造函数称为默认构造函数。一个类只能有一个默认构造函数。()
A:错误
B:正确
正确答案:
(判断题)33:C++只能用于面向对象程序设计,不适用于面向过程程序设计。()
A:错误
B:正确
正确答案:
(判断题)34:打开一个二进制文件时可以同时指定它既是输入文件又是输出文件。()
A:错误
B:正确
正确答案:
(判断题)35:使用new运算符创建数组时,可以为该数组指定初始值()。
A:错误
B:正确
正确答案:
(判断题)36:运算符重载以后,其优先级和结合性都不能改变。()
A:错误
B:正确
正确答案:
(判断题)37:在C++的异常处理方法中,try块和catch块必须作为一个整体出现。()
A:错误
B:正确
正确答案:
(判断题)38:在类的继承层次结构中,在不同的层次中不能出现名字相同、参数个数和类型都相同而功能不同的函数。()
A:错误
B:正确
正确答案:
(判断题)39:将运算符“+”函数重载为类的成员函数,交换律不适用。()
A:错误
B:正确
正确答案:
(判断题)40:使用字符串流时必须打开文件。()
A:错误
B:正确
正确答案:
(判断题)41:C++语言支持封装性和继承性,不支持多态性。()。
A:错误
B:正确
正确答案:
(判断题)42:引用可以不初始化。()
A:错误
B:正确
正确答案:
(判断题)43:字符串"sdfgh"的长度是5。()
A:错误
B:正确
正确答案:
(判断题)44:程序运行过程出现异常是由于语法错误引起的。()
A:错误
B:正确
正确答案:
(判断题)45:引用和指针都可作函数参数。()
A:错误
B:正确
正确答案:
(判断题)46:私有继承的派生类不能访问基类中的私有成员,但公用继承的派生类可以访问基类中的私有成员。()
A:错误
B:正确
正确答案:
(判断题)47:变量必须先定义后赋值。()
A:错误
B:正确
正确答案:
(判断题)48:若类Y是类X的私有派生类,类Z是类Y的公用派生类,则类Z不能访问类X的公用成员和保护成员。()
A:错误
B:正确
正确答案:
(判断题)49:析构函数必须指定返回类型以及函数参数。()
A:错误
B:正确
正确答案:
(判断题)50:对使用默认参数的构造函数,如果在类外定义构造函数,应该在定义构造函数时指定默认值()。
A:错误
B:正确
正确答案:
奥鹏作业QQ 5 1 5 2 2 4 9 8 6
答案来源www.openhelp100.com
页:
[1]