




已阅读5页,还剩1页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
学号 姓名 院(部) 专业考试时间:2009年月 日-密-封-线-一、单项选择题(本大题共62小题,每小题1分,共62分)在每小题列出的四个备选项中 只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。1.在C+中,数据封装要解决的问题是 ( )A.实现规模化 B防止书写错误C防止非法访问 D实现类型转换2.下面哪种情况不属于函数重载 ( )A类中定义的运算符函数B同一个名字,参数个数不同C派生类中重新定义了一个和基中的原型完全相同的函数D类中定义了两个同名、同参数表的函数,但其中一个是常成员函数3.关于拷贝构造函数错误的说法有 ( )A拷贝构造函数是一种特殊的构造函数,且不能在类中进行函数重载B若自定义派生类的拷贝构造函数,那么也必须自定义基类的拷贝构造函数C拷贝构造函数只能有一个参数,且为常量引用或非常量引用D拷贝后早函数不允许在函数体中使用return语句4.下列关于this指针的说法正确的是 ( )A this指针一定指向常量型数据 B this指针指向的数据不可更改C 静态成员函数中也可以访问this指针D this指针本身可直接作为成员函数的返回值5.任意一个类,构造函数的个数最多是 ( )A 不限个数 B 1C 2 D 36.下列关于构造函数的描述中,错误的是 ( )A构造函数可以设置默认的参数 B构造函数在定义类对象的自动执行C构造函数可以是内联函数D构造函数不可以重载7.类的析构函数是对一个对象进行以下哪种操作时自动调用的是 ( )A.建立 B.撤销C.赋值 D.引用8.假定AA为一个类,a()为该类公有的函数成员,x为该类的一个对象,则访问x对象中函数成员a()的格式为 ( )A.x.a B.x.a()C.xa D.(x).a()9.关于对象概念的描述中,说法错误的是 ( )A.对象就是C语言中的结构变量 B.对象代表着正在创建的系统中的一个实体C.对象是类的一个变量 D.对象之间的信息传递是通过消息进行的10.this指针存在的目的是 ( ) A保证基类私有成员在子类中可以被访问B保证基类保护成员在子类中可以被访问C保证每个对象拥有自己的数据成员,但共享处理这些数据成员的代码D保证基类公有成员在子类中可以被访问11.关于new运算符的下列描述中,错误的是 ( )A. 它可以用来动态创建对象和对象数组B.使用它创建的对象或对象数组可以使用运算符delete删除C.使用它创建对象时要调用构造函数D.使用它创建对象数组时必须指定初始值12.已知:p是一个指向类A数据成员m的指针,A1是类A的一个对象.如果要给m赋值为5,正确的是 ( )A.A1.p=5; B.A1-P=5;c.A1.*P=5; D.*A1.P=5 13.定义析构函数时,说法正确的是 ( )A.其名与类名完全相同 B.返回类型是void类型C.无形参,也不可重载 D.函数体中必须有delete语句14.假定一个类的构造函数为A(int aa,int bb)a=aa+;b=a*+bb;,则执行A x(4,5);语句后,x.a和x.b的值分别为 ( )A. 4和5 B.4和20C.4和24 D.20和515.在C+中有以下5条语句: ( )Static int hot;Int &rad=hot;rad=rad+5;hot=hou+rad;couthotendl;执行这5条语句后输出为A.0 B.12C.5 D.1016.如果class类中的所有成员在定义时没有指明权限,则所有成员默认权限是 ( )A. public B. protectedC. private D. static学号 姓名 院(部) 专业考试时间:2009年月 日-密-封-线-17.下面关于友元的描述中错误的是 ( )A友元函数可以访问该类的私有数据成员B一个类的友元类中的成员函数都是这个类的友元函数C类与类之间的友元关系可以继承D友元可以提高程序的运行效率18.下述静态成员的特性中,错误的是 ( )A静态成员函数不能利用this指针B静态数据成员要在类体外进行初始化C引用静态数据成员时,要在静态数据成员名前加和作用域运算符D静态数据成员不是所有对象所共有的19.下列不是描述类成员函数的是 ( )A.构造函数 B.析构函数C.友元函数 D.拷贝构造函数20.下列给字符数组进行初始化中,正确的是 ( )A.char sl =.n ; B. char s2 3=”xyz”;C.char s3 3=a,x,y ; D. char s42,4=“xyz”,”mnp”;21.对于int*pa5;的描述,正确的是 ( )A.pa是一个指向数组的指针,所指向的数组是5个Int型元素B. pa是一个指向某个数组中第5个元素的指针,该元素是int型变量C. . pa5表示某个数组的第5个元素的值D. pa是一个具有5个元素的指针数组,每个元素是一个int型指针22.下述静态数据成员的特征中,错误的是 ( )A.说明静态数据成员时前边要加修饰符staticB.静态数据成员要在类体外进行初始化C.引用静态数据成员时,要在静态数据成员名前加和作用城运算符D.静态数据成员不是所有对象所共用的23.如果类A被说成类B的友元,则 ( )A.类B不一定是类A的友元 B.类B的成员即类A的成员C.类A的成员即类B的成员 D.类A的成员函数不得访问类B的成员24.静态成员函数不能说明为 ( )A.整形函数 B.浮点函数C.虚函数 D.字符型函数25.下列对静态成员的描述中,正确的是 ( )A.静态数据成员可以在类体内进行初始化B.静态数据成员不可以被类的对象调用C.静态数据成员不能受private控制符作用D.静态数据成员可以直接用类名调用26.已知f和g是同一类中的两个成员函数,若f的实现代码体内不能调用g,则可能的情况是( )Af和g都是常成员函数 Bf是常成员函数,g不是f不是常成员函数,g是常成员函数 Dg和f都不是常成员函数27 决定C+语言中函数的返回值类型的是( )Areturn语句中的表达式类型 B调用该函数时系统随机产生的类型调用该函数时的主调用函数类型D在定义该函数时所指定的数据类型28静态成员函数没有( )A返回值 Bthis指针指针参数 D返回类型29在类的定义中,用于为对象分配内存空间,对类的数据成员进行初始化并执行其它内部管理操作的函数是( )A友元函数 B虚函数C构造函数 D析构函数30. 所有在函数中定义的变量,都是( )A全局变量 B局部变量C静态变量 D寄存器变量31、要禁止修改指针P本身,又要禁止修改P所指向的数据,这样的指针应定义为 ( )Aconst char *p=“ABCD”; Bchar*const p=“ABCD”;Cchar const * p=“ABCD”; Dconst char * const p=“ABCD”;32、函数调用func(exp1,exp2),(exp3,exp4,exp5)中所含实参的个数为( )A1 B2C3 D433、假定AB为一个类,则执行“ABa(2),b3,*p4;”语句时调用该类构造函数的次数是( )A3 B4C5 D934、假定AB为一个类,px为指向该类的一个含有n个对象的动态数组的指针,则执行“diletepx;”语句时调用该类析构函数的次数为( )A0 B1Cn Dn+135、假定一个类的构造函数为“A(int i,int j)x=I;y=i*j;”,则执行“A a(4,5);”语句后,a.x和a.y的值分别为( )A4和5 B5和4C4和20 D20和536、下面对静态数据成员的描述中,正确的是( )A静态数据成员可以在类体内进行初始化B静态数据成员可以直接用类名或者对象名来调用C静态数据成员不能用private控制符修饰学号 姓名 院(部) 专业考试时间:2009年月 日-密-封-线-D静态数据成员不可以被类的对象调用37. 类的构造函数被自动调用执行的情况是在定义该类的 ( )A 成员函数时 B 数据成员时C 对象时 D 友元函数时38.已知类A是类B的友元,类B是类C的友元,则 ( )A 类A一定是类C的友元 B类C一定是类A的友元C 类C的成员函数可以访问类B的对象的任何成员D 类A的成员函数可以访问类B的对象的任何成员39.下列说法中正确的是 ( )A 类定义中只能说明函数成员的函数头,不能定义函数体B 类中的函数成员可以在类体中定义,也可以在类体之外定义C 类中的函数成员在类体之外定义时并需要与类声明在同一文件中D 在类体之外定义的函数成员不能操作该类的私有数据成员40.定义静态成员时要使用关键字 ( )A const B staticC delete D template41.已知f1和f2是同一类的两个成员函数,但f1不能直接调用f2,这说明( )A f1和f2都是静态函数 B f1不是静态函数,f2是静态函数C f1是静态函数,f2不是静态函数 D f1和f2都不是静态函数42.调用一成员函数时,使用动态联编的情况是( )A 通过对象调用一虚函数 B通过指针或引用调用一静态函数C 通过对象调用一静态函数 D 通过指针或引用调用一虚函数43.假定一个类的构造函数为“A(int i=4,int j=0)a=i;b=j;”,则执行“A x(1);”语句后,x.a和x.b的值分别为( )A 1和0 B1和4 C 4和0 D4和144.关于this指针使用说法正确的是( )A 保证每个对象拥有自己的数据成员,但共享处理这些数据的代码B 保证基类私有成员在子类中可以被访问C保证基类保护成员在子类中可以被访问D保证基类公有成员在子类中可以被访问45.下列不具有访问权限属性的是( )A 非类成员 B 类成员C数据成员 D 函数成员46、类MyA的拷贝初始化构造函数是( ) A. MyA() B. MyA(MyA) C. MyA(MyA) C. MyA(MyA)47、一个函数功能不太复杂,但要求被频繁调用,则应把它定义为( ) A. 内联函数 B. 重载函数 C. 递归函数 D. 嵌套函数48、以下叙述正确的是( )A 构造函数调用虚函数采用动态联编B. 构造函数可以说明为虚函数C. 当基类的析构函数是虚函数时,它的派生类的析构函数也是虚函数D. 析构函数调用虚函数采用动态联编49 以下关于抽象类的描述正确的是( )A 不能说明指向抽象类对象的指针或引用B 可以说明抽象类对象C 抽象类的纯虚函数的实现可以由自身给出,也可以由派生类给出D. 抽象类的纯虚函数的实现由派生类给出50、在C+中,函数原型不能标识( )A 函数的返回类型 B. 函数参数的个数C 函数参数类型 D. 函数的功能51、对于任意一个类,析构函数的个数最多为( B )A. 0 B. 1 C. 2 D. 352、友元关系不能 ( )A. 提高程序的运行效率 B. 是类与类的关系C 是一个类的成员函数与另一个类的关系 D. 继承53、下面说法正确的是( ) A. 内联函数在运行时是将该函数的目标代码插入每个调用该函数的地方 B. 内联函数在编译时是将该函数的目标代码插入每个调用该函数的地方 C 类的内联函数必须在类体内定义D 类的内联函数必须在类体外通过加关键字inline定义 54.以下有关析构函数的叙述不正确的是( ) A.析数函数没有任何的函数类型 B.系数函数的作用是在对象被撤销时收回先前分配的内存空间 C.系数函数可以有形参 D.一个类只有一个系数函数 55.若sample类中的一个成员函数说明如下:( ) Void set(sample& a),则sample& a的含义是指向类sample的名为a的指针a是sample的对象引用,用来做函数set()的形参讲a的地址赋给变量set学号 姓名 院(部) 专业考试时间:2009年月 日-密-封-线-变量sample与a按位与的结果作为函数set的参数。 56.要实现动态联编必须( )A.通过成员名限定来调用虚函数 B.通过对象名来调用虚函数C.通过派生类对象来调用虚函数 D.通过对象指针或引用来调用虚函数57.下列关于静态数据成员的描述中正确的是( )A.静态数据成员是类的所有对象共有的B.静态数据成员要在构造函数内初始化C.类的每个对象有自己的静态数据成员D.静态数据成员不能通过类的对象调用58.下列不是描述类的成员函数的是( )A.构造函数 B.析构函数C.友元函数 D.拷贝构造函数59.构造函数不具备的特征是( )A.构造函数的函数名与类名相同B.构造函数可以重载C.构造函数可以设置默认参数D.够咱函数必须制定类型说明60.类的析构函数调用的说法正确的是( )A.类创建时 B.创建对象是C.删除对象时 D.不自动调用61.适用采用inline定义函数情况是( )A.函数体含有循环语句 B.函数体含有递归语句c.函数代码少,频繁调用 D.函数代码多、不常调用62.如果类A被说明成类B的友元,则( )A.类A的成员即类B的成员 B.类B的成员即类A的成员C.类A的成员函数不得访问类B的成员D.类B不一定是类A的友元二、填空题(本大题共32小题,每小题1分,共32分)请在每小题的空格中填上正确答案。错填、不填均无分。1在类定义时,如果没有定义任何构造函数,则编译器自动生成一个 构成函数。析构函数名是类名前加上 符号,用来释放对象所占的内存空间。 设A为test类的对象且赋有初值,则语句test B(A);表示 .4在继承机制下,当对象消亡时,编译系统执行析构函数顺序是 .5执行 操作将释放由指针指向的动态分配的数据空间。6 在C+语言中,访问一个对象的成员所用的成员运算符是 7 .定义类动态对象数组时,元素只能靠自动调用该类的_ _来进行初始化。8 .定义_ _函数时,应在参数个数或参数类型上有所不同。9.在C+有两种参数传递方式:传值和_。10.将指向对象的引用作为函数的形参,形参是指向的引用,实参是_。11、假定用户为类AB定义了一个构造函数“A(int i=0):x(i)”,则定义该类的对象,与该语句等价的格式为 。12、复制构造函数使用 作为形式参数。13、在已经定义了整型指针ip后,为了得到一个包括10个整数的数组并由ip所指向,应使用语句 。14.假定用户没有给一个名为AB 的类定义构造函数,则系统自动给出的缺省构造函数定义为 。15.在删除一个动态对象时,将自动调用该动态对象所属类的函数。16.静态成员函数、友元函数、构造函数和析构函数中,不属于成员函数的是17.在下面的定义中,私有成员有class LocationintX,Y;protected: int zeroX,zeroY; int SetZero(intzeroX,intzeroY);private: int length,heighe;public: void init (int initX,int initY); int GetX( ) int GetY( );18.类的私有成员只能被它的成员函数和访问。19.有const修饰的对象称为20.重载函数在参数类型或参数个数上不同,但 必须相同。21、定义类的动态对象数组时,系统只能够自动调用该类的_构造函数对其进行初始化。22、C+中语句const char const p=hello;所定义的指针P和它所指的内容都不能被_。23、假定AB为一个类,则语句AB(int i=0);为该类_函数的原型说明。24、不同对象可以调用相同名称的函数,但执行完全不同行为的现象称为_多态性_。学号 姓名 院(部) 专业考试时间:2009年月 日-密-封-线-25、在C+中,访问一个指针所指向的对象的成员所用的指向运算符是_。26、构造函数、析构函数和友元函数中,不是该类成员的是_。27、假设类X的对象X是类Y的成员对象,则Y Obj语句执行时,先调用类_的构造函数。28、静态成员定义的关键字为_。29.局部对象和全局对象中,在同一程序中_生存期最长。30.this指针始终指向调用函数的_。31 .控制格式输入输出的操作中,函数_是设置域宽的。要求给出函数名和参数类型。32.如果要把A类成员函数f()且返回值为void声明为类B的友元函数,则应在类B的定义中加入的语句_。三、改错题(本大题共5小题,每小题2分,共10分)下面的类定义中有一处错误,请用下横线标出错误所在行并给出修改意见。1.#include Class A pu
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中考素材关于希望的作文(10篇)
- 一份微笑一份希望作文250字150字(10篇)
- 线下推广活动场地租赁安全协议专业
- 喜洋洋与灰太狼之穿越时空450字(9篇)
- 修辞手法鉴赏古诗文经典句子教学教案
- 公交公司微笑活动方案
- 公交车读书日活动方案
- 公共文化进宗祠活动方案
- 公关创业活动方案
- 公务文书活动方案
- 转让幼儿园经营权协议书
- 2025履约保证金合同
- 2024全国初中数学竞赛试题及答案
- 人教版小学数学三年级下册《我们的校园》示范课教学课件
- 空调服务技术保障及人员培训方案
- 纤维绳索断裂机理研究-洞察分析
- 医院导医服务礼仪
- 《污水处理过程》课件
- 江苏省2024-2025年跨地区职业学校职教高考一轮联考(机械专业综合理论试卷含答案)
- 肿瘤患者心理护理与社会支持课件
- 《平衡计分卡在烟草公司绩效管理中的应用研究》
评论
0/150
提交评论