西工大17春《面向对象程序设计(C++)》在线作业答案100分参考
西工大17春《面向对象程序设计(C++)》在线作业www.ap5u.com
一、单选题:
1.下列定义中,Sample是一个类,( )是定义指向对象数组的指针p。 (满分:4)
A. Sample *p B. Sample(*p)
C.(Sample*)p D. Sample *p[]
2.关于多继承二义性的描述中,( )是错误的。 (满分:4)
A. 一个派生类的两个基类都有某个同名成员,在派生类中对这个成员的访问可能出现二义性
B. 解决二义性的最常见的方法是对成员名的限定
C. 基类和派生类中出现同名函数,也存在二义性的问题
D. 一个派生类是从两个基类派生而来的,而这两个基类又有一个共同的基类,对该基类类成员进行访问时,也可能出现二义性
3.下列说法错误的是( )。 (满分:4)
A. 如果try块中没有抛出异常,则try块执行完后忽略该try块的异常处理器catch块,程序在最后一个catch块后恢复执行。
B. 如果在try块以外抛出异常,程序将被终止。
C. try块抛出异常后,从对应的try块开始到异常被抛出之间所构造的所有自动对象将被析构。
D. 抛出异常和异常处理必须放在同一个函数中。
4.( )不是构造函数的特征。 (满分:4)
A. 构造函数的函数名和类名相同
B. 构造函数可以重载
C. 构造函数可以设置默认参数
D. 构造函数必须指定函数类型说明
5.在C++中,打开一个文件就是将这个文件与一个( )建立关联;关闭一个文件就是取消这种关联。 (满分:4)
A. 类
B. 流
C. 对象
D. 结构
6.有关构造函数的说法错误的是( )。 (满分:4)
A. 构造函数的名字和类的名字一样
B. 构造函数在说明类变量时自动执行
C. 构造函数无任何函数类型
D. 构造函数有且只有一个
7.C++中的类有两种用法:一种是类的实例话,即生成类的对象,并参与系统的运行;另一种是通过( )派生出新的类。 (满分:4)
A. 复用
B. 继承
C. 单继承
D. 多继承
8.关于动态联编的下列描述中,( )是错误的。 (满分:4)
A. 动态联编是以虚函数为基础的
B. 动态联编是在运行时确定所调用的函数代码的
C. 动态联编用调用函数操作是指向对象的指针或对象的引用
D. 动态联编是在编译时确定执行函数的
9.下列输出字符’A’的方法中,( )是错误的。 (满分:4)
A. cout<< put(‘A’)
B. cout<<’A’
C. cout.put(‘A’)
D. char A =’A’;cout<< A
10.友元运算符obj1>obj2被C++编译器解释为( )。 (满分:4)
A. operator>(obj1,obj2)
B. >(obj1,obj2)
C. obj2.operator>(obj1)
D. obj1.operator>(obj2)
11.( )是一个在基类中说明的虚函数,它在该基类中没有定义,但要求任何派生类都必须定义自己的版本。 (满分:4)
A. 虚析构函数
B. 虚构造函数
C. 纯虚函数
D. 静态成员函数
12.对虚函数的调用( )。 (满分:4)
A. 一定使用动态联编
B. 必须使用动态联编
C. 一定使用静态联编
D. 不一定使用动态联编
13.有关析构函数的说法错误的是( )。 (满分:4)
A. 析构函数有且只有一个
B. 析构函数无任何函数类型
C. 析构函数和析构函数一样可以有形参
D. 析构函数的作用是在对象被撤销时收回先前分配的内存空间
14.下列运算符中,( )运算符在C++中不能重载。 (满分:4)
A. :&&
B. []
C. ::
D. new
15.进行文件操作时需要包含( )文件。 (满分:4)
A. istream.h
B. fstream.h
C. stdio.h
D. stdlib.h
16.已知类Sample中的一个成员函数说明如下: Void set(Sample & a); 其中,Sample & a的含义是( )。 (满分:4)
A. 指向类Sample的指针为a
B. 将a的地址赋值给变量set
C. a是类Sample的对象的引用,用来做函数set( )的形参
D. 变量Sample与a按位相与作为函数set( )的参数
17.已知一个类Sample,( )是定义指向类Sample成员函数的指针,假设类有3个公有成员:void f1(int),void f2(int),int a。 (满分:4)
A. Sample *p
B. int Sample::*pc = &Sample::a
C. void(Sample::*pa)(int)
D. Sample *a
18.一个友元函数能够访问该类的( )。 (满分:4)
A. 私有成员
B. 保护成员
C. 公有成员
D. 所有成员
19.C++中用三个保留字实现异常的处理,除了try和catch外,还有( )。 (满分:4)
A. if
B. class
C. throw
D. return
20.关于虚函数和抽象类的描述中,( )是错误的。 (满分:4)
A. 纯虚函数是一种特殊的虚函数,它没有具体的定义
B. 抽象类是指具有纯虚函数的类
C. 一个基类中说明有纯虚函数,该基类的派生类一定不在是抽象类
D. 抽象类只能作为基类来使用,其纯虚函数的定义由派生类给出
21.有关类的说法错误的是( )。 (满分:4)
A. 类是一种用户自定义的数据类型
B. 只有类的成员函数才能存取类中的私有数据
C. 只类中,如果不作特别说明,所指的数据均为私有数据
D. 只类中,如果不作特别说明,所指的成员函数均为公有类型
22.对基类和派生类的关系描述中,( )是错误的。 (满分:4)
A. 派生类是基类的具体化
B. 派生类是基类的子集
C. 派生类是基类定义的延续
D. 派生类是基类的组合
23.派生类的对象对它的基类成员中( )是可以访问的。 (满分:4)
A. 公有继承的公有成员
B. 公有继承的私有成员
C. 公有继承的保护成员
D. 私有继承的公有成员
24.下列运算符中,( )运算符在C++中不能重载。 (满分:4)
A. ?
B. +
C. -
D. < =
25.下列关于运算符重载的描述中,( )是正确的。 (满分:4)
A. 运算符重载可以改变操作数的个数
B. 运算符重载可以改变运算符的优先级
C. 运算符重载可以改变结合性
D. 运算符重载不可以改变语法结构
下面的附件就是答案
页:
[1]