西工大《面向对象程序设计》作业机考参考答案Word格式文档下载.docx
《西工大《面向对象程序设计》作业机考参考答案Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《西工大《面向对象程序设计》作业机考参考答案Word格式文档下载.docx(10页珍藏版)》请在冰豆网上搜索。
C.一个类只能有一个对象
D.类与对象的关系和数据和变量的关系相似
C
4.在C++中,函数原型不能标识()。
A.函数的返回类型
B.函数参数的个数
C.函数参数类型
D.函数的功能
D
5.下列运算符中,()运算符在C++中不能重载。
A.:
B.+
D.<
=
(……)一般放在其他catch子句的后面,该子句()。
A.抛掷异常
B.捕获所有类型的异常
C.检测并处理异常
D.有语法错误
7.关于成员函数特征的下述描述中,()是错误的。
A.成员函数一定是内联函数
B.成员函数可以重载
C.成员函数可以设置参数的默认值
D.成员函数可以是静态的
8.下列说法错误的是()。
A.如果try块中没有抛出异常,则try块执行完后忽略该try块的异常处理器catch块,程序在最后一个catch块后恢复执行。
B.如果在try块以外抛出异常,程序将被终止。
块抛出异常后,从对应的try块开始到异常被抛出之间所构造的所有自动对象将被析构。
D.抛出异常和异常处理必须放在同一个函数中。
9.实现运行时的多态要使用()。
A.重载函数
B.构造函数
C.析构函数
D.虚函数
10.公有成员提供了类对外部的界面,私有成员只能被类的成员访问,而()不允许外界访问,但允许派生类的访问,这样既有一定的隐藏能力,有提供了开放的界面
A.公有成员
B.私有成员
C.私有成员函数
D.保护成员
11.通常的拷贝初始化构造函数的参数是()。
A.某个对象名
B.某个对象的成员名
C.某个对象的引用名
D.某个对象的指针名
12.有关析构函数的说法错误的是()。
A.析构函数有且只有一个
B.析构函数无任何函数类型
C.析构函数和析构函数一样可以有形参
D.析构函数的作用是在对象被撤销时收回先前分配的内存空间
13.有关构造函数的说法错误的是()。
A.构造函数的名字和类的名字一样
B.构造函数在说明类变量时自动执行
C.构造函数无任何函数类型
D.构造函数有且只有一个
14.下面函数模板定义中不正确的是()。
15.在C++中把不返回任何类型的函数应该说明为()。
16.如果一个类至少有一个虚函数,那么就称该类为()。
A.抽象类
B.虚基类
C.派生类
D.以上都不对
17.已知P是一个指向Sample数据成员m的指针,s是类Sample的一个对象。
如果要给m赋值为5,()是正确的。
5
>
p=5
.*p=5
D.*=5
18.关于read()函数的下列描述中,()是对的。
A.该函数是用来从键盘输入中获取字符串
B.该函数所获得的字符的多少是不受限制的
C.该函数只能用于文本文件的操作
D.该函数只能按规定读取所指定的字符数
19.在重载一运算符时,若运算符函数的形参表中没有参数,则不可能的情况是()。
A.该运算符是一个单目运算符
B.该运算符函数有一个隐含的参数this
C.该运算符函数是类的成员函数
D.该运算符函数是类的友元函数
20.()不是构造函数的特征。
A.构造函数的函数名和类名相同
B.构造函数可以重载
C.构造函数可以设置默认参数
D.构造函数必须指定函数类型说明
21.已知一个类Sample,()是定义指向类Sample成员函数的指针,假设类有3个公有成员:
voidf1(int),voidf2(int),inta。
*p
Sample:
:
*pc=&
Sample:
a
(Sample:
*pa)(int)
*a[10]
22.关于虚函数和抽象类的描述中,()是错误的。
A.纯虚函数是一种特殊的虚函数,它没有具体的定义
B.抽象类是指具有纯虚函数的类
C.一个基类中说明有纯虚函数,该基类的派生类一定不在是抽象类
D.抽象类只能作为基类来使用,其纯虚函数的定义由派生类给出
23.下列输出字符’A’的方法中,()是错误的。
<
put(‘A’)
’A’
‘A’)
A=’A’;
cout<
A
24.友元运算符obj1>
obj2被C++编译器解释为()。
(obj1,obj2)
B.>
25.对虚函数的调用()。
A.一定使用动态联编
B.必须使用动态联编
C.一定使用静态联编
D.不一定使用动态联编
26.使用如setw()的操作符对数据进行格式输出时,应包含()文件。
27.已知f1(int)是类A的公有成员函数,p是指向成员函数f1的指针,采用赋值()是正确的。
=f1
=A:
f1
f1()
=f1()
28.在成员函数中进行双目运算符重载时,其参数表中应带有()个参数。
29.一个函数功能不太复杂,但要求被频繁调用,选用()。
A.内联函数
B.重载函数
C.递归函数
D.嵌套函数
30.下面运算符中,不能被重载的运算符是()。
A.<
B.-
C.:
D.[]
31.继承具有()即当基类本身也是某一个类的派生类时,底层的派生类也会自动继承间接基类的成员。
A.规律性
B.传递性
C.重复性
D.多样性
32.()是析构函数的特征。
A.一次类中只能定义一个析构函数
B.析构函数名与类名不同
C.析构函数的定义只能在类体内
D.析构函数可以有一个或多个参数
33.在C++中,打开一个文件就是将这个文件与一个()建立关联;
关闭一个文件就是取消这种关联。
A.类
B.流
C.对象
D.结构
34.关于getline()函数的下列描述中,()是错误的。
A.该函数是用来从键盘上读取字符串
B.该函数读取的字符串长度是受限制的
C.该函数读取字符串时,遇到终止符时便停止
D.该函数所使用的默认终止符是换行符
是istream的一个对象,用于处理标准输入。
cout、cerr和clog是()的对象,cout处理标准输出,cerr和clog都处理标准出错信息,只是cerr输出不带缓冲,clog输出带缓冲。
36.文件的I/O由、ofstream、fstream三个类提供。
是istream的派生类,处理文件输入;
ofstream是ostream的派生类,处理文件输出;
fstream是ostream的派生类,可以同时处理文件的I/O,使用I/O类的程序需要包含头文件()。
37.关于动态联编的下列描述中,()是错误的。
A.动态联编是以虚函数为基础的
B.动态联编是在运行时确定所调用的函数代码的
C.动态联编用调用函数操作是指向对象的指针或对象的引用
D.动态联编是在编译时确定执行函数的
++中用三个保留字实现异常的处理,除了try和catch外,还有()。
39.已知inta,*pa=&
a;
输出指针pa十进制的地址值的方法是()。
<
pa
*pa
&
pa;
long(pa)
++中的类有两种用法:
一种是类的实例话,即生成类的对象,并参与系统的运行;
另一种是通过()派生出新的类。
A.复用
B.继承
C.单继承
D.多继承
41.下述静态数据成员的特征中,()是错误的。
A.说明静态数据成员时前边要加修饰符static
B.静态数据成员要在类体外进行初始化
C.引用静态成员时,要在静态数据成员名前加“类名”和作用域运算符
D.静态数据成员不是所有对象所共用的
++语言本身没有定义I/O操作,但I/O操作包含在C++实现中。
C++标准库iostream提供了基本的I/O类。
I/O操作分别由两个类istream和ostream提供,由他们派生出一个类(),提供双向的I/O操作。
使用I/O流的程序需要包含。
43.与C语言printf("
Hello,World\n"
);
语句功能相同的C++语句是()。
"
44.有关类的说法错误的是()。
A.类是一种用户自定义的数据类型
B.只有类的成员函数才能存取类中的私有数据
C.只类中,如果不作特别说明,所指的数据均为私有数据
D.只类中,如果不作特别说明,所指的成员函数均为公有类型
45.下列关于运算符重载的描述中,()是正确的。
A.运算符重载可以改变操作数的个数
B.运算符重载可以改变运算符的优先级
C.运算符重载可以改变结合性
D.运算符重载不可以改变语法结构
46.基类的()不能为派生类的成员访问,基类的公有成员在派生类中的性质和继承的性质一样,而基类的保护成员在私有继承时在派生类中成为私有成员,在公有和保护继承时在派生类中仍为保护成员
47.下列运算符中,()运算符在C++中不能重载。
A.&
&
B.[]
48.进行文件操作时需要包含()文件。
49.关于虚函数的描述中,()是正确的。
A.虚函数是一个Static类型的成员函数
B.虚函数是一个非成员函数
C.基类中说明了虚函数后,派生类中其对应的函数可不必说明虚函数
D.派生类的虚函数与基类的虚函数具有不同的参数个数和类型
50.派生可以分为公有派生、私有派生。
由私有派生得到的派生类,其基类的所以成员都只能成为它的私有成员,这些私有成员只能被派生类的成员函数访问,而通过()无权访问它;
公有派生的意义是基类中所有成员在派生;
类中也有都是公有的。
A.公有派生
B.派生类的对象
C.私有派生
D.派生类的构造函数