ImageVerifierCode 换一换
格式:DOCX , 页数:41 ,大小:37.19KB ,
资源ID:394135      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-394135.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C++期末复习参考资料Word文档下载推荐.docx)为本站会员(b****1)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

C++期末复习参考资料Word文档下载推荐.docx

1、string str; 当语句cinstr; 执行时,从键盘输入:Microsoft Visual Studio 6.0! cin.getline()所得的结果是str=( Microsoft )。A. Microsoft Visual Studio 6.0! B. MicrosoftC. Microsoft Visual D. Microsoft Visual Studio 6.013、 下列语句中,将函数int sum(int x, int y)正确重载的是float sum(float x, float y) 。A. float sum(int x, int y); B. int sum

2、(int a, int b);C. float sum(float x, float y); D. double sum(int y, int x);14、 下列表示引用的方法中,( int &x=a )是正确的。已知:int a=1000;A. int &x=a; B. char &y; C. int &z=1000; D. float &t=&a;15、 在一个函数中,要求通过函数来实现一种不太复杂的功能,并且要求加快执行速度,选用 内联函数 。A. 内联函数 B. 重载函数 C. 递归调用 D. 嵌套调用16、 下列有关C+类的说法中,不正确的是在类中,如果不做特别说明,所有成员的访问权

3、限均为公用的 。A. 类是一种用户自定义的数据类型B. 只有类中的成员函数或类的友元函数才能存取类中的私有成员C. 在类中,如果不做特别说明,所有成员的访问权限均为私有的D. 在类中,如果不做特别说明,所有成员的访问权限均为公用的18.已知X类,则当程序执行到语句:X array3;时,调用了 3 次构造函数。A. 0 B. 1 C. 2 D. 317、 下面正确的是一个类只能定义一个析构函数,但可以定义多个构造函数A. 一个类只能定义一个构造函数,但可以定义多个析构函数B. 一个类只能定义一个析构函数,但可以定义多个构造函数C. 构造函数与析构函数同名,只是名字前加了一个求反符号()D. 构

4、造函数可以指定返回类型,而析构函数不能指定任何返回类型,即使是void类型也不可以18、 已知:print( )函数是一个类的常成员函数,它无返回值,下列表示中, void print( ) const 是正确的。 A. void print( ) const; B. const void print( ); C. void const print( ); D. void print(const);19、 下面描述中,表达错误的是(公用继承时基类中的private成员在派生类中仍是private的 ) A. 公用继承时基类中的public成员在派生类中仍是public的B. 公用继承时基类中的

5、private成员在派生类中仍是private的C. 公用继承时基类中的protected成员在派生类中仍是protected的D. 私有继承时基类中的public成员在派生类中是private的20、 设置虚基类的目的是(消除二义性 )。A. 简化程序 B. 消除二义性 C. 提高运行效率 D. 减少目标代码22.下面(基类的对象可以赋值给派生类的对象 )的叙述不符合赋值兼容规则。A. 派生类的对象可以赋值给基类的对象B. 基类的对象可以赋值给派生类的对象C. 派生类的对象可以初始化基类的对象 D. 派生类的对象的地址可以赋值给指向基类的指针21、 关于虚函数的描述中,( 基类中说明了虚函数

6、后,派生类中与其对应的函数可不必说明为虚函数 )是正确的。 A. 虚函数是一个static类型的成员函数 B. 虚函数是一个非成员函数 C. 基类中说明了虚函数后,派生类中与其对应的函数可不必说明为虚函数 D. 派生类的虚函数与基类的虚函数具有不同的参数个数和类型22、 下列关于静态数据成员的说法,不正确的是( 静态数据成员不是所有对象所共用的 )。A. 类中定义的公用静态数据成员,可以通过类的对象来访问B. 类中定义的所有静态数据成员,都必须在类外初始化C. 静态数据成员不是所有对象所共用的D. 普通的成员函数可以直接访问类中的静态数据成员23、 下面对模板的声明,正确的是( templat

7、e )。A. template B. templateC. template D. template24、 下列的各类函数中,(友元函数)不是类的成员函数A. 构造函数 B. 析构函数 C. 友元函数 D. 复制构造函数26.关于C+与C语言关系的描述中,C+语言和C语言都是面向对象是错误的。 AC语言是C+语言的一个子集 BC语言与C+语言是兼容的 CC+语言对C语言进行了一些改进 DC+语言和C语言都是面向对象的25、 已知:int m=10; 下列表示引用的方法中,int &x=m是正确的。Aint &x=m; Bint &y=10; Cint &z; Dfloat &m;26、 系统在

8、调用重载函数时往往根据一些条件确定哪个重载函数被调用,在下列选项中,不能作为依据的是 函数的返回值类型 。A函数的返回值类型 B参数的类型 C函数名称 D参数个数下27、 已知X类,则当程序执行到语句X* array3;时,调用了( 3 )次构造函数。A0 B1 C2 D328、 有关析构函数的说法,不正确的是 析构函数和构造函数一样可以有形参。A析构函数有且仅有一个B析构函数和构造函数一样可以有形参C析构函数的功能是在系统释放对象之前作一些内存清理工作D析构函数无任何函数类型29、 类定义的内容允许被其对象无限制地存取的是 public 部分。Aprivate 部分 B protected

9、部分 Cpublic 部分 D以上都不对30、 关于常数据成员,不正确的是 常数据成员可以在定义时直接初始化 。A常数据成员的定义形式与一般常变量的定义形式相同,只不过常数据成员的定义必须出现在类体中B常数据成员必须进行初始化,并且不能被更新C常数据成员通过构造函数的成员初始化列表进行初始化D常数据成员可以在定义时直接初始化31、 运用运算符delete删除一个动态对象时系统首先为该动态对象调用析构函数,再释放其占用的内存。A系统首先为该动态对象调用构造函数,再释放其占用的内存B系统首先释放该动态对象占用的内存,再为其调用构造函数C系统首先为该动态对象调用析构函数,再释放其占用的内存D系统首先

10、释放动态对象占用的内存,再为其调用析构函数32、 可以在类外用p.a的形式访问派生类对象p的基类成员a,其中a是( )。A私有继承的公用成员 B公用继承的私有成员C公用继承的保护成员 D公用继承的公用成员33、 在公用继承方式下,有关派生类对象和基类对象的关系,不正确的叙述是(派生类的对象可以直接访问基类中的成员)。A派生类的对象可以赋给基类的对象B派生类的对象可以初始化基类的引用C派生类的对象可以直接访问基类中的成员D派生类的对象的地址可以赋给指向基类的指针34、 设置虚基类的目的是(消除二义性 )。A简化程序 B消除二义性 C提高运行效率 D减少目标代码35、 在C+中,用于实现动态多态性

11、的是(虚函数 )。A内联函数 B重载函数 C模板函数 D虚函数36、 不能说明为虚函数的是(构造函数 )。A析构函数 B构造函数 C类的成员函数 D以上都不对37、 如果一个类至少有一个纯虚函数,那么就称该类为(抽象类)。A抽象类 B派生类 C纯基类 D以上都不对38、 下列运算符中,( : )运算符在C+中不能被重载。A& B C: Dnew39、 模板的使用实际上是将类模板实例化成一个(类 )。A函数 B对象 C类 D抽象类40、 假定MyClass为一个类,则该类的拷贝构造函数的声明语句为( MyClass(MyClass &x) )。AMyClass(MyClass x) BMyCla

12、ss&(MyClass x)CMyClass(MyClass &x) DMyClass(MyClass *x)41、 编写C+程序一般需经过的几个步骤依次是(编辑、编译、连接、运行)A. 编辑、调试、编译、连接B. 编辑、编译、连接、运行C. 编译、调试、编辑、连接D. 编译、编辑、连接、运行43.所谓数据封装就是将一组数据和与这组数据有关操作组装在一起,形成一个实体,这实体也就是(类)A. 类B. 对象C. 函数体D. 数据块42、 对基类和派生类的关系描述中,错误的是(基类继承了派生类的属性)A. 派生类是基类的具体化 B. 基类继承了派生类的属性C. 派生类是基类定义的延续 D. 派生类

13、是基类的特殊化43、 C+语言是从早期的C语言逐渐发展演变而来的.与C语言相比,它在求解问题方法上进行的最大改进是(面向对象 ) A.面向过程 B.面向对象 C.安全性 D.复用性44、 下面描述中,表达错误的是(公用继承时基类中的private成员在派生类中仍是private的 ) 45、 下面基类的对象可以赋值给派生类的对象的叙述不符合赋值兼容规则。C. 派生类的对象可以初始化基类的对象46、 面向对象程序设计思想的主要特征中不包括功能分解,逐步求精。A. 封装性 B. 多态性 C. 继承性 D. 功能分解,逐步求精47、 对使用关键字new所开辟的动态存储空间,释放时必须使用delete

14、Afree BcreateCdelete Drealse48、 设类A将其它类对象作为成员,则建立A类对象时,下列描述正确的是(成员构造函数先执行)AA类构造函数先执行 B成员构造函数先执行C两者并行执行 D不能确定49、 要让一个类中的所有对象具有共同的数据,请使用_静态数据成员_。51.设置虚基类的目的是:消除二义性A.简化程序 B.消除二义性 C.提高运行效率 D.减少目标代码51.C+是既支持面向对象的程序设计又支持面向过程的程序设计的混合型语言。50、 一个类可包含析构函数的个数是(1个)A0个 B1个C至少一个 D0个或多个51、 在函数定义中的形参属于(局部变量)A. 全局变量B

15、. 局部变量C. 静态变量D. 寄存器变量52、 关于对象概念的描述中,说法错误的是(对象就是C语言中的结构变量)A. 对象就是C语言中的结构变量B. 对象代表着正在创建的系统中的一个实体C. 对象是类的一个变量D. 对象之间的信息传递是通过消息进行的53、 下面叙述不正确的是(基类的公有成员在派生类中仍然是公有的)A. 派生类一般都用公有派生B. 对基类成员的访问必须是无二义性的C. 赋值兼容规则也适用于多重继承的组合D. 基类的公有成员在派生类中仍然是公有的54、 在公有派生类的成员函数不能直接访问基类中继承来的某个成员,则该成员一定是基类中的(私有成员)A. 私有成员B. 公有成员C.

16、保护成员D. 保护成员或私有成员55、 关于this指针使用说法正确的是(保证每个对象拥有自己的数据成员,但共享处理这些数据的代码)A. 保证每个对象拥有自己的数据成员,但共享处理这些数据的代码B. 保证基类私有成员在子类中可以被访问。C. 保证基类保护成员在子类中可以被访问。D. 保证基类公有成员在子类中可以被访问。56、 所谓多态性是指 (不同的对象调用相同名称的函数)A. 不同的对象调用不同名称的函数B. 不同的对象调用相同名称的函数C. 一个对象调用不同名称的函数D. 一个对象调用不同名称的对象57、 假设ClassY:publicX,即类Y是类X的派生类,则说明一个Y类的对象时和删除

17、Y类对象时,调用构造函数和析构函数的次序分别为(X,Y;Y,X)A. X,Y;Y,XB. X,Y;X,YC. Y,X;D. Y,X;58、 假定AA为一个类,a()为该类公有的函数成员,x为该类的一个对象,则访问x对象中函数成员a()的格式为(x.a() A. x.a B. x.a() C. x-a D. (*x).a()59、 系统在调用重载函数时往往根据一些条件确定哪个重载函数被调用,在下列选项中,不能作为依据的是(函数的返回值类型)。A函数的返回值类型 B参数的类型 C函数名称 D参数个数61.下列有关C+类的说法中,不正确的是(在类中,如果不做特别说明,所有成员的访问权限均为公用的)。

18、A类是一种用户自定义的数据类型B只有类中的成员函数或类的友元函数才能存取类中的私有成员C在类中,如果不做特别说明,所有成员的访问权限均为私有的D在类中,如果不做特别说明,所有成员的访问权限均为公用的60、 下列哪个类型函数不适合声明为内联函数(函数执行时间过长) A函数体语句较多 B函数体语句较少 C函数执行时间较短 D函数执行时间过长61、 下列关于类的权限的描述错误的是(类本身的成员函数只能访问自身的私有成员) A类本身的成员函数只能访问自身的私有成员 B类的对象只能访问该类的公有成员 C普通函数不能直接访问类的公有成员,必须通过对象访问 D一个类可以将另一个类的对象作为成员1、下列特性中

19、不是面向对象程序设计语言所特有的是(模板)。(A)数据封装 (B)继承(C)多态性 (D)模板2、(引用 )是给变量取一个别名,它引入了变量的同意词。(A)指针 (B)引用 (C)枚举 (D)结构3、类成员的访问权限中,(private)只能被本类的成员函数和其友元函数访问。(A)share (B)public (C)private (D)protected4、关于构造函数,下列说法不正确的是构造函数有且只有一个(A)构造函数名字和类名相同(B)构造函数在创建对象时自动执行(C)构造函数无任何函数返回类型(D)构造函数有且只有一个5、派生类可以访问其基类的(公有和保护成员)。(A)公有成员 (

20、B)保护成员(C)私有派生 (D)公有和保护成员6、关于运算符重载的描述中,错误的是(运算符重载不可以改变运算符的功能)。(A)运算符重载不可以改变操作数的个数(B)运算符重载不可以改变运算符的功能(C)运算符重载不可以改变结合方向(D)运算符重载不可以改变运算优先级7、对于类中定义的成员,其隐含访问权限为(private)。 Apublic Bprotected Cprivate Dstatic9、下面有关重载函数的说法中正确的是(重载函数必须有不同的形参列表) (A)重载函数必须具有不同的返回值类型;(B)重载函数形参个数必须不同; (C)重载函数必须有不同的形参列表 (D)重载函数名可以

21、不同;10、有如下的对类“CSample”的说明,其中( int a=23;)是错误的。class CSample Aint a=23;BCSample();public:CCSample(int val);D CSample();11、在int a=3,int *p=&a;中,*p的值是(3 )A.变量a的地址值 B.无意义C.变量p的地址值 D.312、每个类(可以有多个)构造函数。(A)只能有一个 (B)只可有公有的 (C)可以有多个 (D)只可有缺省的13、在一个类中可以对一个操作符进行(多种)重载。(A)1 种 (B)2 种以下 (C)3 种以下 (D)多种14、在公有继承的情况下,

22、基类非私有成员在派生类中的访问权限(保持不变)(A) 受限制 (B)保持不变 (C)受保护 (D)不受保护17、 下面描述中,表达错误的是(公有继承是基类中的private成员在派生类中仍是private的) (A)公有继承时基类中的public成员在派生类中仍是public的(B)公有继承是基类中的private成员在派生类中仍是private的 (C)公有继承时基类中的protected成员在派生类中仍是protected的 (D)私有继承时基类中的public成员在派生类中是private的18、定义析构函数时,应该注意(无形参,也不可重载) (A)其名与类名完全相同 (B)返回类型是

23、void 类型 (C)无形参,也不可重载 (D)函数体中必须有 delete 语句19、对于在类中定义的静态数据成员,下面正确的说法是(在类外进行初始化)A.该类的每个对象中都有一个静态数据成员B.对象创建时产生 C.在类外进行初始化D.既可以在类外初始化,也可以在类内初始化20、C+中声明常量的关键字是(const)。A. const B. extern C. public D. enum填空题1、类和对象的关系可表述为:类是对象的 抽象 ,而对象则是类的 特例 。2、在C+中,三种继承方式的说明符号为public、private和 protected,如果不加说明,则默认的继承方式为 私有

24、的 。3、如果只想保留公共基类的一个复制,就必须使用关键字 virtual 把这个公共基类声明为虚基类。4、若要把void fun()定义为类A的友元函数,则应在类A的定义中加入语句 friend 。5、类的静态成员分为 成员函数 和 数据成员 。7、通过关键字 template 可以声明模板,通过关键字 typename T 指定函数模板的类型参数,有几个类型参数就有几个类型关键字。8、列出C+中两种用户自定义的数据类型: 类 、 结构体 。9、构造函数的作用是 来处理对象的初始化 。类是对象的 抽象 ,而对象则是类的 特例。2、静态成员函数没有隐含的 this 指针 ,所以,在C+程序中,

25、静态成员函数主要用来访问静态数据成员,而不访问非静态成员。3、在图1中,A,B,C,D,E,F均是类,其中属于单继承的派生类有 E ,属于多继承的派生类有 D F ,类F的基类有 D E ,类A的派生类有 D 。4、如果只想保留公共基类的一个复制,就必须使用关键字 virtual 把这个公共基类声明为虚基类。5、从实现的角度来讲,多态性可以划分为两类: 静态多态 和 动态多态 。6、如果一个类包含一个或多个纯虚函数,则该类称为 抽象类 。7、若要把void fun()定义为类A的友元函数,则应在类A的定义中加入语句 friend 。8、列出C+中的两种代码复用方式: 继承 和 组合 。9、析构函数的作用是 来处理对象的初始化 。10、假定A是一个类名,则该类的拷贝构造函数的原型说明语句为: A(A& a)。1.中允许有三种类型的数据,分别是 public ; private ; protected 。2.指向类成员的指针包含指向类_本身_的指针和指向类_成员 的指针。3.可以通过_类名限定_或者_虚继承_两种方式来解决二义性问题。4.如果对象的生存期与程序的运行期相同,我们称它具有 全局性 。5.C+提供的 多继承 机制允许一个派生类继承多个基类,即使这些基类是相互无关的。6.声明一个int型

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2