大学MOOC C++高级编程(黑龙江大学)1002696019 最新慕课完整章节测试答案
第25讲类的定义
文章目录
第25讲掌握类的基本概念
1、单选题:
下面关于类中概念的描述中错误的是:
选项:
A: 类是抽象数据类型的实现
B: 类是具有共同行为的若干对象的统一描述体
C: 类是创建对象的样板
D: 类就是C语言中的结构体类型
答案: 【 类就是C语言中的结构体类型】
2、单选题:
下列关于C++语言类的描述中错误的是:
选项:
A: 类用于描述事物的属性和对事物的操作
B: 类与类之间通过封装而具有明确的独立性
C: 类与类之间必须是平等的关系,而不能组成层次结构
D: 类与类之间可以通过一些方法进行通信和联络
答案: 【 类与类之间必须是平等的关系,而不能组成层次结构】
3、单选题:
在面向对象设计中,对象有很多基本特点,其中“一个系统中通常包含很多类,这些类之间呈树形结构”这一性质指的是对象的:
选项:
A: 分类性
B: 标识唯一性
C: 继承性
D: 封装性
答案: 【 继承性】
4、单选题:
什么是成员:
选项:
A: 类的特征
B: 类的方法
C: 类的事件
D: 以上全是
答案: 【 以上全是】
5、单选题:
作用域运算符的功能是:
选项:
A: 标识作用域的级别
B: 指出的大小
C: 标识某个成员是属于哪一类的
D: 给出的范围
答案: 【 标识某个成员是属于哪一类的】
第26讲对象的定义和使用
第26讲掌握对象的定义和使用
1、单选题:
假定AA为一个类,a()为该类公有的函数成员,x为该类的一个对象,则访问x对象中函数成员a()的格式为:
选项:
A: x.a
B: x.a()
C: x->a
D: x->a()
答案: 【 x.a()】
2、单选题:
为了使类中的某个成员不能被类的对象通过成员操作符访问,则不能把该成员的访问权限定义为:
选项:
A: public
B: protected
C: private
D: static
答案: 【 public】
3、单选题:
在用关键字class定义的类中,以下叙述正确的是:
选项:
A: 在类中,不作特别说明的数据成员均为私有类型
B: 在类中,不作特别说明的数据成员均为公有类型
C: 类成员的定义必须是成员变量定义在前,成员函数定义在后
D: 类的成员定义必须放在类定义体内部
答案: 【 在类中,不作特别说明的数据成员均为私有类型】
4、单选题:
下列关于成员函数特征的描述中,错误的是:
选项:
A: 成员函数一定是内联函数
B: 成员函数可以重载
C: 成员函数可以设置参数的默认值
D: 成员函数可以是静态的
答案: 【 成员函数一定是内联函数】
5、单选题:
下列有关类的说法不正确的是:
选项:
A: 对象是类的一个实例
B: 任何一个对象只能属于一个具体的类
C: 一个类只能有一个对象
D: 类与对象的关系和数据类型与变量的关系相似
答案: 【 一个类只能有一个对象】
第27讲构造函数
第27讲掌握构造函数的功能和使用方法
1、单选题:
类的构造函数被自动调用执行的情况是在定义该类的:
选项:
A: 成员函数时
B: 数据成员时
C: 对象时
D: 友元函数时
答案: 【 对象时】
2、单选题:
设类A将其它类对象作为成员,则建立A类对象时,下列描述正确的是:
选项:
A: 类构造函数先执行
B: 成员构造函数先执行
C: 两者并行执行
D: 不能确定
答案: 【 成员构造函数先执行】
3、单选题:
假定一个类的构造函数为“A(int aa=1, int bb=0) {a=aa; b=bb;}”, 则执行“A x (4);”语句后,x.a和x.b的值分别为:
选项:
A: 1和0
B: 1和4
C: 4和0
D: 4和1
答案: 【 4和0】
4、单选题:
下列是构造函数的特点,是错误的是:
选项:
A: 构造函数是一种成员函数,它具有一般成员函数的特点,但是不能像其他成员函数被显示地调用
B: 构造函数的名称与其类名相同
C: 构造函数必须指明其返回类型
D: 一个类中可定义一个或多个构造函数
答案: 【 构造函数必须指明其返回类型】
5、单选题:
构造函数不具备的特征的是:
选项:
A: 构造函数的函数名与类名相同
B: 构造函数可以重载
C: 构造函数可以设置默认参数
D: 定义对象时系统并不会自动调用构造函数
答案: 【 定义对象时系统并不会自动调用构造函数】
第28讲默认构造函数和复制构造函数
第28讲掌握默认构造函数和复制构造函数的使用法则
1、单选题:
假定AB为一个类,则执行AB x(y);语句时将自动调用该类的:
选项:
A: 有参构造函数
B: 无参构造函数
C: 复制构造函数
D: 赋值构造函数
答案: 【 复制构造函数】
2、单选题:
通常,复制构造函数的参数是:
选项:
A: 某个对象名
B: 某个对象的成员名
C: 某个对象的引用名
D: 某个对象的指针名
答案: 【 某个对象的引用名】
3、单选题:
类的默认的复制构造函数:
选项:
A: 在任何情况下都存在
B: 仅当未定义复制构造函数时存在
C: 仅当未定义有参构造函数时存在
D: 仅当未定义任何构造函数时存在
答案: 【 仅当未定义复制构造函数时存在】
4、单选题:
下列情况中,不会调用复制构造函数的是:
选项:
A: 用一个对象去初始化同一类的另一个新对象时
B: 将类的一个对象赋值给该类的另一个对象时
C: 函数的形参是类的对象,调用函数进行形参和实参相结合
D: 函数的返回值是类的对象,函数执行返回调用时
答案: 【 将类的一个对象赋值给该类的另一个对象时】
5、单选题:
假设OneClass为一个类,则该类的复制初始化构造函数的声明语句为:
选项:
A: OneClass(OneClass p);
B: OneClass& (OneClass p);
C: OneClass(OneClass & p);
D: OneClass (OneClass *p);
答案: 【 OneClass(OneClass & p);】
第29讲析构函数
第29讲掌握析构函数的用途和使用方法
1、单选题:
下面有关类说法不正确的是:
选项:
A: 一个类可以有多个构造函数
B: 一个类只有一个析构函数
C: 析构函数需要指定参数
D: 在一个类中可以说明具有类类型的数据成员
答案:
