没有合适的资源?快使用搜索试试~ 我知道了~
主要是对于学c++的期末复习,内有编程题,解答题,选择题,填空题
资源推荐
资源详情
资源评论










一 选择题(共 45 题)
1.对类的构造函数和析构函数描述正确的是( )。
A. 构造函数可以重载,析构函数不能重载 √
B. 构造函数不能重载,析构函数可以重载
C. 构造函数可以重载,析构函数也可以重载
D. 构造函数不能重载,析构函数也不能重载
2.继承具有( ),即当基类本身也是某一个类派生类时,底层的派生类也会自动继
承间接基类的成员。
A)规律性 B.传递性√ C.重复性 D.多样性
3.假设 OneClass 为一个类,则该类的复制初始化构造函数的声明语句为( )。
A.OneClass(OneClass p); B. OneClass& (OneClass p );
C. OneClass(OneClass & p); √ D. OneClass (OneClass * p);
4.对于结构中定义的成员,其默认的访问权限为( )。
A.public B. protected C.private D. static
5.下面对静态数据成员的描述中,不正确的是( )。
A.静态数据成员可以在类体内进行初始化√
B.静态数据成员不可以在类体内进行初始化
C.静态数据成员能受 private 控制符的作用
D.静态数据成员调用前必须初始
6. C++中的类有两种用法:一种是类的实例化,即生成类对象,并参与系统的运行;另
一种是通过( )派生了新的类。
A.复用 B.继承 √ C.封装 D.引用
7. 假定 AA 为一个类,a 为该类公有的数据成员,x 为该类的一个对象,则访问 x 对象中
数据成员 a 的格式为( )。
A. x(a) B. x[a] C. x->a D. x.a √
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.下列对基类和派生类关系的描述中,错误的是( )。
A.派生类是基类的具体化 B.派生类是基类的子集√
C.派生类是基类定义的延续 D.派生类是基类的组合
15.下列对派生类的描述中,错误的是( )。
A.一个派生类可以作为另一个派生类的基类 B.派生类至少有一个基类
C.派生类的缺省继承方式是 private D.派生类只继承了基类的公有成员和保护成员√

16.下列对继承的描述中,错误的是( )。
A.析构函数不能被继承
B.派生类也是基类的组合
C.派生类的成员除了它自己的成员外,还包含了它的基类的成员
D.派生类中继承的基类成员的访问权限到派生类保持不变√
17.派生类的对象对它的基类成员中( )是可以访问的。
A.公有继承的公有成员√ B.公有继承的私有成员
C.公有继承的保护成员 D.私有继承的公有成员
18.下列说法错误的是( )。
A.公有继承的基类中的 public 成员在派生类中仍是 public 的
B.公有继承的基类中的 private 成员在派生类中仍是 private 的√
C.私有继承的基类中的 public 成员在派生类中仍是 private 的
D.保护继承的基类中的 public 成员在派生类中仍是 protected 的
19.下面叙述错误的是( )。
A.基类的 protected 成员在派生类中仍然是 protected√
B.基类的 protected 成员在 public 派生类中仍然是 protected 的
C.基类的 protected 成员在 private 派生类中是 private 的
D.基类的 protected 成员不能被派生类的对象访问
20.设置虚基类的声明中,正确的是( )。
A.简化程序 B.消除二义性√ C.提高运行效率 D.减少目标代码
21.关于虚函数的描述中,正确的是()。
A.虚函数是一个静态成员函数
B.虚函数是一个非成员函数
C.虚函数即可以在函数说明定义,也可以在函数实现时定义
D.派生类的虚函数与基类中对应的虚函数具有相同的参数个数和类型√
22.下列描述中,( )是抽象类的特征。
A.可以说明虚函数 B.可以进行构造函数重载
C.可以定义友元函数 D.不能说明其对象√
23. 静态数据成员的初始化是在( )中进行的。
A. 构造函数 B. 任何成员函数
C. 所属类 D. 全局区√
24. 当将一个类 A 或函数 f()说明为另一个类 B 的友元后,类 A 或函数 f()能够直接访问类
B 的( )。
A. 只能是公有成员 B. 只能是保护成员
C. 只能是除私有成员之外的任何成员 D. 具有任何权限的成员√
25. 在重载一个运算符时,其参数表中没有任何参数,这表明该运算符是( )。
A. 作为友元函数重载的 1 元运算符 B. 作为成员函数重载的 1 元运算符√
C. 作为友元函数重载的 2 元运算符 D. 作为成员函数重载的 2 元运算符
26. 关于运算符重载,下列说法正确的是( )。
A. 重载时,运算符的优先级可以改变。
B. 重载时,运算符的结合性可以改变。
C. 重载时,运算符的功能可以改变。√
D. 重载时,运算符的操作数个数可以改变。

27. 从一个基类派生出的各个类的对象之间( )。
A. 共享所有数据成员,每个对象还包含基类的所有属性
B. 共享部分数据成员,每个对象还包含基类的所有属性
C. 不共享任何数据成员,但每个对象还包含基类的所有属性
D. 共享部分数据成员和函数成员√
28. C++的继承性允许派生类继承基类的( )。
A. 部分特性,并允许增加新的特性或重定义基类的特性√
B. 部分特性,但不允许增加新的特性或重定义基类的特性
C. 所有特性,并允许增加新的特性或重定义基类的特性
D. 所有特性,但不允许增加新的特性或重定义基类的特性
29. 派生类的成员函数可以直接访问基类的( )成员。
A. 所有 B. 公有和保护 √ C. 保护和私有 D. 私有
30. 当派生类中有和基类一样名字的成员时,一般来说,( )。
A. 将产生二义性 B. 派生类的同名成员将覆盖基类的成员√
C. 是不能允许的 D. 基类的同名成员将覆盖派生类的成员
31.关于纯虚函数和抽象类的描述中,错误的是( )。
A.纯虚函数是一种特殊的虚函数,它没有具体的实现
B.抽象类是指具体纯虚函数的类
C.一个基类中说明有纯虚函数,该基类派生类一定不再是抽象类√
D.抽象类只能作为基类来使用,其纯虚函数的实现由派生类给出
32.如果一个类至少有一个纯虚函数,那么就称该类为( )。
A.抽象类√ B.虚函数 C.派生类 D.以上都不对
33.要实现动态联编,必须通过( )调用虚函数。
A.对象指针 √ B.成员名限定 C.对象名 D.派生类名
34.以下( )成员函数表示虚函数。
A.virtual int vf(int); B.void vf(int)=0;
C.virtual void vf()=0; D.virtual void vf(int) { }; √
40.下面描述中,正确的是( )。
A.virtual 可以用来声明虚函数√
B.含有纯虚函数的类是不可以用来创建对象的,因为它是虚基类
C.即使基类的构造函数没有参数,派生类也必须建立构造函数
D.静态数据成员可以通过成员初始化列表来初始化
35. 在成员函数中进行双目运算符重载时,其参数表中应带有( )个参数。
A. 0 B. 1 √ C. 2 D. 3
36. 在重载一运算符时,若运算符函数的形参表中没有参数,则不可能的情况是( )。
A. 该运算符是一个单目运算符。 B. 该运算符函数有一个隐含的参数 this。
C. 该运算符函数是类的成员函数。 D. 该运算符函数是类的友元函数。√
37. 下面对于友元函数描述正确的是( )。
A.友元函数的实现必须在类的内部定义
B.友元函数是类的成员
C.友元函数破坏了类的封装性和隐藏性√
D.友元函数不能访问类的私有成员
38.为了使类中的某个成员不能被类的对象通过成员操作符访问,则不能把该当成员

的访问权限定义为( )。
A.public √ B.protected C.private D.ststic
39.下面对静态数据成员的描述中,正确的是( )。
A.静态数据成员是类的所有对象共享的数据√
B.类的每一个对象都有自己的静态数据成员
C.类的不同对象有不同的静态数据成员值
D.静态数据成员不能通过类的对象调用
40.C++类体系中,不能被派生类继承的有( )。
A.构造函数 √ B.虚函数 C.静态成员函数 D.赋值操作函数
41 下列虚基类的声明中,正确的是( )。
A.class virtual B:public A B.virtual class B:public A
C.class B:public A virtual D.class B: virtual public A √
42 在下面的表达式中,不表示虚继承的是( )。
A.virtual public B.public virtual
C.public √ D. virtual
43.下列关于动态联编的描述中,错误的是( )。
A.动态联编是以虚函数为基础
B.动态联编是运行时确定所调用的函数代码的
C.动态联编调用函数操作是指向对象的指针或对象引用
D.动态联编是在编译时确定操作函数的√
44.下面 4 个选项中,( )是用来声明虚函数的。
A.virtual √ B.public C.using D.false
45.编译时的多态性可以通过使用( )获得。 A
A.虚函数和指针 √ B.重载函数和析构函数
C.虚函数和对象 D.虚函数和引用
二 填空题(共 33 题)
1.重载插入运算符<<时,其运算符函数的返回值类型应当是 ostream &。
2.派生类可以定义其基类 中不具备的数据和操作。
3.对象将其大部分实现细节隐藏起来,这种机制称为 封闭 。
4.建立类和类的对象时,系统对类 不分配内存,系统对对象 分配内存。
5.基类和派生类的关系称为继承 和派生 。
6.当保护继承时,基类的公有或保护 成员在派生类中成为保护成员,派生类对象不能直接
访问基类的任何 成员。
7. C++支持两种多态性:编译 时的多态性(重载)和运行 时的多态性(虚函数)。、
8.在 C++中定义类时,通常是利用变量 描述对象的“特征”; 利用函数 描述对象的“行为”。
9.假定用户为类 AB 定义了一个构造函数"AB(int aa,char*bb=NULL):a(aa),b(bb){}”,
则该类中至少包含有 2
个数据成员。
10.类是对象
的抽象
;而对象则是类的具体实例。
11.如果不做特殊说明,类成员的默认访问权限是
私有
; 结构成员的默认访问权限是公有。
12.在定义对象的同时初始化其成员变量,需要利用构造函数,用于初始化变量的值可以是
固定的常量,也可以通过参数 获得。
13.在私有继承关系下,基类的公有成员和保护成员将成为派生类中的私有成员,它们只能
由派生类的成员函数来访问;基类的私有成员将成为派生类中的不可访问的成员。
剩余23页未读,继续阅读
资源评论


qq_42216998
- 粉丝: 0
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- java毕业设计,个人消费管理系统
- Office 365与SharePoint Online迁移指南
- 二维光栅出瞳扩展系统优化
- java毕业设计,小型药店管理系统
- java毕业设计,宠物领养管理系统
- java毕业设计,宠物猫店管理系统
- java毕业设计,社区物业管理系统
- Unity 3D 游戏开发 第3版 宣雨松-著 第十章 多媒体
- java毕业设计,无人超市管理系统
- 集团网络规划方案.doc
- 计算机基础专升本题库.doc
- 数据库原理及应用教案.pptx
- 中国娱乐网站解决优化方案.doc
- 协会网站建设方案书.doc
- 计算机基础知识第12章.ppt
- 应用Excel表快速计算三桩承台工程量.docx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制
