南开15秋学期面向对象程序设计》在线作业.doc
文本预览下载声明
15秋学期《面向对象程序设计》在线作业
【单选题】
1.将一个string类对象赋予新值,应该使用string类的()函数。
. ssign
. insrt
. swp
. fin
正确答案:
2.类的默认的无参构造函数()。
. 在任何情况下都存在
. 仅当未定义无参构造函数时存在
. 仅当未定义有参构造函数时存在
. 仅当未定义任何构造函数时存在
正确答案:
3.在表达式x+y*z中,+ 是作为成员函数重载的运算符,*是作为非成员函数重载的运算符。下列叙述中正确的是()。
. oprtor+有两个参数,oprtor*有两个参数
. oprtor+有两个参数,oprtor*有一个参数
. oprtor+有一个参数,oprtor*有两个参数
. oprtor+有一个参数,oprtor*有一个参数
正确答案:
4.下列关于运算符重载的描述中,正确的是()。
. 运算符重载可以改变操作数的个数
. 运算符重载可以改变运算符的优先级
. 运算符重载可以改变运算符的结合性
. 运算符重载可以使运算符实现特殊功能
正确答案:
5.结构化程序设计方法以()为中心进行分析和设计。
. 结构
. 模块
. 对象
. 类
正确答案:
6.下列关于成员函数特征的描述中,错误的是()。
. 成员函数可以重载
. 成员函数一定是内联函数
. 成员函数可以设置参数的默认值
. 成员函数可以是静态的
正确答案:
7.下列关于拷贝构造函数的描述中,错误的是()。
. 一个类可以定义多个拷贝构造函数
. 若未定义拷贝构造函数,则系统会提供一个默认拷贝构造函数
. 当类中有指针成员变量时,通常要为这个类定义一个拷贝构造函数来实现深拷贝
. 拷贝构造函数中的参数按引用方式传递
正确答案:
8.下面叙述中错误的是()。
. 派生类可以使用privt派生
. 对基类成员的访问必须是无二义性的
. 基类成员的访问能力在派生类中维持不变
. 赋值兼容规则也适用于多继承的组合
正确答案:
9.假定Mylss为一类,执行Mylss ,(2),*p[2];语句时会自动调用该类构造函数()次。
. 2
. 3
. 4
. 5
正确答案:
10.假设堆内存分配均成功,则下面程序段完全正确的是()。
. int *p=nw int(3);outlt;lt;*p;lt p;
. int *p=nw int[5]={1,2,3,4,5};for(int i=0;ilt;5;i++)outlt;lt;p[i];lt []p;
. int *p=nw int[5];for(int i=0;ilt;5;i++,p++) {*p=i; outlt;lt;*p;}lt []p;
. 以上程序段均正确
正确答案:
11.执行语句“string str();”时,系统会自动调用string类的构造函数()。
. string()
. string(onst hr *s)
. string(onst string str)
. string(siz_typ n, hr )
正确答案:
12.交换两个string类对象所表示的字符串的内容,应该使用string类的()函数。
. ssign
. insrt
. swp
. fin
正确答案:
13.如果一个类至少有一个纯虚函数,那么就称该类是()。
. 抽象类
. 虚基类
. 派生类
. 以上都不对
正确答案:
14.在保护继承中,基类中的私有成员作为派生类的()。
. 公有成员
. 私有成员
. 保护成员
. 不可访问
正确答案:
15.下列关于继承的描述中,错误的是()。
. 基类中的析构函数不能被派生类继承
. 基类中的保护成员在派生类中无法直接访问
. 派生类的成员除了包括派生类中自己定义的成员外,还包括它从基类继承的成员
. 在公有继承方式下基类中公有成员和保护成员的访问权限到派生类保持不变
正确答案:
16.对、两个类进行多重继承得到派生类,则创建派生类的对象时,从基类中继承过来的成员变量由()类的构造函数进行初始化。
.
.
.
. 都可以
正确答案:
17.要在类对象上使用运算符,以下不用必须被重载的运算符是()。
. [ ]
. =
. ++
. --
正确答案:
18.下列关于类和对象的叙述中,错误的是()。
. 一个类只能有一个对象
. 对象是类的具体实例
. 类是某一类对象的抽象
. 类和对象的关系是一种数据类型与变量的关系
正确答案:
19.已知“flot *p; p=nw flot[2];”,若要释放p所指向的堆中的这些字节,下列语句正确的是()。
. lt p;
. lt p[];
. lt []p;
. lt p[2];
正确答案:
显示全部