




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、面向对象程序设计复习题一、单项选择题1.下面关于对象概念的描述中,_是错误的。(BA.对象代表着正在创建的系统中的一个实体B.对象就是C语言中的结构体变量C.对象是一个状态和操作(或方法的封装体D.对象之间的信息传递是通过消息进行的2. 继承机制的作用是:(CA.信息隐藏B.数据封装C.定义新类D.数据抽象3.有关析构函数的说法不正确的是_(DA.析构函数有且只有一个B.析构函数无任何函数类型C.析构函数没有形参D.析构函数不能是虚函数4.友元的作用之一是_(AA.提高程序的运行效率B.加强类的封装性C.实现数据的隐藏性D.增加成员函数的种类5.通常拷贝构造函数的参数是_。(CA.某个对象名B
2、.某个对象的成员名C.某个对象的引用名D.某个对象的指针名6.如果在基类中将show声明为不带返回值的纯虚函数,正确的写法是_。(CA.virtual show(=0;B.virtual void show(;C.virtual void show(=0;D.void show=0 virtual;7.下面关于友元的描述中,错误的是_。(DA.友元函数可以访问该类的私有数据成员B.一个类的友元类中的成员函数都是这个类的友元函数C.友元可以提高程序的运行效率D.类与类之间的友元关系可以继承8.在C+中,_运算符不能重载。(BA. +B.?:C.-D.<=9.下列关于运算符重载的描述中,_是
3、正确的。(DA.运算符重载可以改变操作数的个数B.运算符重载可以改变优先级C.运算符重载可以改变结合性D.运算符重载不可以改变语法结构10. 在下列函数原型中,可以作为类AA构造函数的是_(DA.void AA(int ;B.int AA( ;C.AA(intconst;D.AA(int;11.在声明类时,下面的说法正确的是_。(CA.可以在类的声明中给数据成员赋初值B.数据成员的数据类型可以是registerC.private,public,protected可以按任意顺序出现D.没有用private,public,protected定义的数据成员是公有成员12.继承具有_,即当基类本身也是
4、某一个类的派生类时,底层的派生类也会自动继承间接基类的成员。(BA.规律性B.传递性C.重复性D.多样性13.在多重继承中,公有派生和私有派生对于基类成员在派生类中的可访问性与单继承的规则_。(AA.完全相同B.完全不同C.部分相同,部分不同D.以上都不对14.对虚函数的调用_。(DA.一定使用动态联编B.必须使用动态联编C.一定使用静态联编D.不一定使用动态联编15.关于成员函数特征的下述描述中,_是错误的。(AA.成员函数一定是内置函数B.成员函数可以重载C.成员函数可以设置参数的默认值D.成员函数可以是静态的16. 下面关于c+语言变量的叙述错误的是_(BA.在c+语言中变量分为auto
5、,static,extern和register四种存储类型B.自动变量和外部变量的作用域为整个程序C.内部变量的作用域是定义它的函数D.外部静态变量的作用域是定义它的文件17.下列的各类函数中,_不是类的成员函数。(CA.构造函数B.析构函数C.友元函数D.拷贝构造函数18. 有如下类声明:class Foo ing bar ;则Foo类的成员bar是_(CA.公有数据成员B.公有成员函数C.私有数据成员D.私有成员函数19.下列表示引用的方法中,_是正确的。已知:int m=10; (DA. float &t=&m;B.int &y=10;C.int &z;D
6、. int &x=m;20.设置虚基类的目的是_。(BA.简化程序B.消除二义性C.提高运行效率D.减少目标代码21.对于类中定义的成员,其隐含访问权限为_(BA.publicB.privateC.staticD.protected22.关于类和对象不正确的说法是_ (BA.类是一种类型,它封装了数据和操作B.一个类的对象只有一个C.对象是类的实例D.一个对象必属于某个类23.声明一个类的对象时,系统自动调用一个函数_c_;撤消对象时,系统自动调用一个函数;该函数为_c_A.成员函数;构造函数B.复制构造函数;析构函数C.构造函数;析构函数D.析构函数;复制构造函数24.当一个派生类私
7、有继承一个基类时,基类中的所有公有成员和保护成员成为派生类的_A_A.private成员B.protected成员C.public成员D.友元25.在C+中,要实现动态联编,必须使用_D_调用虚函数A.类名B.派生类指针C.对象名D.基类指针26.若一个类中含有纯虚函数,则该类称为_A_A. 抽象类B. 纯基类C.派生类D. 基类27.下列关于this指针的叙述中,正确的是_D_A.任何与类相关的函数都有this指针B.类的成员函数都有this指针C.类的友元函数都有this指针D.类的非静态成员函数才有this指针28.有如下类声明:class Book int num( ;则Book类的成
8、员num是_D_A.公有数据成员B.公有成员函数C.私有数据成员D.私有成员函数29.下面有关重载函数的说法中正确的是_C_A.重载函数必须具有不同的返回值类型;B.重载函数形参个数必须不同;C重载函数必须有不同的形参列表; D.重载函数名可以不同;30.设置虚基类的目的是_A_A.消除二义性B.简化代码C.提高运行效率D.减少目标代码31.在C+语言程序中,对象之间的相互通信通过_B_A.继承实现B.调用成员函数实现C.封装实现D.函数重载实现32.下列运算符中,在C+语言中不能重载的是_C_A.*B.>=C.:D./33.下面对友元函数描述正确的是_C_A.友元函数的实现必须在类的内
9、部定义B.友元函数是类的成员函数C.友元函数破坏了类的封装性和隐藏性D.友元函数不能访问类的私有成员34.下面叙述不正确的是_A_A.基类的保护成员在派生类中仍然是保护成员B.基类的保护成员在公有派生类中仍然是保护成员C.基类的保护成员在私有派生类中是私有成员D.对基类成员的访问必须是无二义性35.下面对静态数据成员的描述中,正确的是_D_A.静态数据成员可以在类体内进行初始化B.静态数据成员不可以被类的对象调用C.静态数据成员不能受private控制符的作用D.静态数据成员可以直接用类名调用36.在C+类语言体系中,不能被派生类继承的有_BA.转换函数B.构造函数C.虚函数D.静态成员函数3
10、7.在类的定义中,用于为对象分配内存空间,对类的数据成员进行初始化并执行其他内部管理操作的函数是_C_A.友元函数B.虚函数C.构造函数D.析构函数38.下列关于虚基类的描述中,错误的是_B_A.设置虚基类的目的是为了消除二义性;B.虚基类的构造函数在非虚基类之后调用;C.若同一层包含多个虚基类,这些基类的构造函数按照它们的次序调用;D.若虚基类由非基类派生而来,则仍然先调用基类构造函数,再用派生类的构造函数;39.考虑函数原型void test(int a,int b=7,char="*",下面的函数调用中,属于不合法调用的是_C_test(5 B.test(5,8 C.
11、test(6,"#" D.test(0,0."*"40.下列关于构造函数的描述中,错误的是_D_构造函数可以设置默认参数; B.构造函数在定义类对象时自动执行C.构造函数可以是内联函数;D.构造函数不可以重载41.在重载一个运算符时,如果其参数表中有一个参数,则说明该运算符是( 。 DA.一元成员运算符B.二元成员运算符C.一元友元运算符D.选项B和选项C都可能42.在公有派生情况下,有关派生类对象和基类对象的关系,下列叙述不正确的是( 。 CA.派生类的对象可以赋给基类的对象B.派生类的对象可以初始化基类的引用C.派生类的对象可以直接访问基类中的成员D
12、.派生类的对象的地址可以赋给指向基类的指针43.下面关于虚函数的描述,错误的是( 。BA.在成员函数声明的前面加上virtual修饰,就可把该函数声明为虚函数B.基类中说明了虚函数后,派生类中对应的函数也必须说明为虚函数C.虚函数可以是另一个类的友元函数,但不能是静态成员函数D.基类中说明的纯虚函数在其任何派生类中都必须实现44.定义派生类时,若不使用关键字显示地规定采用何种继承方式,则默认方式为( 。 AA.私有继承B.非私有继承C.保护继承D.公有继承45.有如下程序:#includeusing namespace std;class ONEint c;public:ONE(:c(0cou
13、t<<1;ONE(int n:c(ncout<<2;class TWOONE onel;ONE one2;public:TWO(int m:one2(mcout<<3;int main(TWO t (4 ;return 0 ;运行时的输出结果是( 。 CA.3B.23C.123D.21346.关于静态数据成员的描述中正确的是DA类的静态数据成员不是类的所有对象共享的数据B类的静态数据成员不能被类的成员函数调用C类的静态数据成员不能被类的构造函数调用D类的静态数据成员必须进行初始化47下面正确的是,在父类中的访问属性访问修饰符在子类中的访问属性(CApubli
14、c,private不能直接访问 Bprotect,public,publicCprivate,public不能直接访问 Dprotect,private,protect48类A是类B的友元,类B是类C的友元,则下列说法正确的是DA类B是类A的友元B类C是类A的友元C类A是类C的友元D以上都不对49下列关于构造函数说法不正确的是CA构造函数必须与类同名 B构造函数可以省略不写C构造函数必须有返回值 D在构造函数中可以对类中的成员进行初始化50.类的析构函数的作用是DA一般成员函数的初始化 B类的初始化C对象的初始化D删除类创建的对象51.下列说法正确的是BA内联函数在运行时是将该函数的目标代码插
15、入每个调用该函数的地方B内联函数在编译时是将该函数的目标代码插入每个调用该函数的地方C类的内联函数必须在类体内定义D类的内联函数必须在类体外通过加关键字inline定义52.下面对静态数据成员的描述中,正确的是DA静态数据成员可以在类体内进行初始化B静态数据成员不可以被类的对象调用 C静态数据成员不能受 private 控制符的作用 D静态数据成员可以直接用类名调用 二、知识点 1.实现运行时的多态性要使用虚函数。 2.如果一个类至少有一个纯虚函数,那么就称该类为抽象类。 3. 运算符重载不能改变操作符的个数、运算符的优先级、运算符的结合性和运算符的语法结构。 4. 构造函数是一种特殊的成员函
16、数,它主要用来为对象分配内存空间,对类的数据成员进行初始化并执 行对象的其他内部管理操作。 5. 静态成员函数不能直接引用类中说明的非静态成员。 6. 引用是给对象取一个别名,它引入了对象的同义词。 7.设置友元函数的目的是为能够访问该类的私有成员。 8.运算符重载仍然保持原来的优先级、结合性和语法结构。 9.基类的私有成员不能被派生类的成员访问。 10.静态联编支持的多态性称为编译时的多态性,也称静态多态性。 11.任何类中允许有三种访问权限的数据,这三种访问权限分别是 public、private、protected。 12.为了满足运算符“+”的可交换性,必须将其重载为友元函数。 13.
17、对于含有对象成员的派生类,其构造函数的执行顺序为:先执行基类的构造函数、再执行对象成员的构 造函数,后执行派生类的构造函数。 14.利用成员函数对双目运算符重载,其左操作数为 this 指针指出的对象,右操作数为成员函数参数。 15.C+允许在相同的作用域内以相同的名字定义几个不同实现的函数,称这种同一个函数名多个含义的现 象为函数重载。 16. 通过使用 new 和 delete 两个运算符进行的分配为动态存储分配。 17. 当类定义中有数据成员为指针时,解决浅拷贝出现的运行错误的方法是编写拷贝构造函数。 18. 如果使用 protected 继承基类,其公有成员就会变成派生类的保护成员,其
18、保护成员就会变成派生类的 保护成员,其私有成员不能继承 19. 20. 21. 22. 23. 24. 一个函数功能不太复杂但要求被频繁调用,应定义为内联函数。 抽象类只能作为基类使用,而不能声明它的对象。 构造函数可以重载,析构函数不可以重载。 静态成员函数没有 this 指针。 类有两个特殊的成员函数构造函数和析构函数。 在表达式 x+y*z 中, +是作为成员函数重载的运算符, *是作为非成员函数重载的运算符。 其中 operator+ 有一个参数,operator*有两个参数。 25. 一个派生类只有一个基类的情况称为单继承,而有多个直接基类的情况称为多继承。 26. 调用析构函数的次序正好与调用构造函数的次序相反。 27. 非成员函数应说明为类的友元函数才能访问这个类的 private 成员。 28. 通过使用 new 和 delete 两个运算符进行的分配为 动态存储分配。 29如果类 B 继承了类 A,则称类 A 为类 B 的基类,类 B 称为类 A 的派生类 30. 表
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 机械设备行业智能监测与故障诊断技术研究方案
- 医疗器械质量检测与评估手册
- 制造业智能工厂建设与生产优化方案
- 淄博2025年山东淄博高青县卫生健康系统事业单位招聘卫生专业技术人员27人笔试历年参考题库附带答案详解
- 电子政务系统作业指导书
- 项目解决方案与实施方案报告
- 百色2025年广西百色市事业单位人才春季招聘20人笔试历年参考题库附带答案详解
- 2020年成人高等学校招生全国统一考试高起点(理科数学)真题
- 三年级英语下册- 教案 -学习任务单 U6-Lesson 3 Can I water them(我能浇水吗)
- 家庭劳动教育讲座
- 陋室铭(全国一等奖)
- GIS组合电器现场高压试验
- 中年女性养生健康知识讲座
- 2023公共数据授权运营案例集
- 2023年云南省环境工程评估中心招聘3人笔试参考题库(共500题)答案详解版
- 射频消融术术前宣教
- 生物化学(护理专业高职)全套教学课件
- ASME B16.5-16.47法兰尺寸对照表
- 大学生辩论赛评分标准表
- 四川大学2020年《C程序设计语言》试卷
- 妇联档案管理制度范文
评论
0/150
提交评论