面向对象编程技术试卷B2010_第1页
面向对象编程技术试卷B2010_第2页
面向对象编程技术试卷B2010_第3页
面向对象编程技术试卷B2010_第4页
面向对象编程技术试卷B2010_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

… ……装… 订 … 线 … 课程 班级 姓名 学号 … 密 ……封… 线 …

安徽工业大学试题纸(一)题号—二三四五六七八九十十一十二十三十四十五十六十七十八十九二十总分得分2010〜2011学年第一学期期末考试《面向对象编程技术》试卷(B)一、单项选择题(201.5=30分)使用指针动态申请数组float[10][25][9]语句应是 。A) float(*fp)[10][25]=newfloat[25][9];B) float*fp=newfloat[10][25][9];C) float(*fp)[25][9]=newfloat[10][25][9];D) float*fp=newfloat[25][9]; 不是构造函数的特征。A)构造函数的函数名与类名相同 B)构造函数可以重载C)构造函数可以设置缺省参数 D)构造函数必须指定类型说明关于new运算符的错误的描述是 。A) 使用运算符new创建对象数组时必须定义初始值B) 使用运算符new创建对象时,会调用类的构造函数C) 运算符new可以用来动态创建对象和对象数组D) 使用new运算符创建的对象可以使用运算符delete删除下列运算符中, 运算符在C++中不能重载。TOC\o"1-5"\h\zA) =B) *C) ::D) ++下列关于友元的描述中,错误的是 友元函数可以访问该类的私有数据成员B.—个类的友元类的成员函数都是这个类的友元函数C.友元可以提高程序的运行效率 D.类与类之间的友元关系可以继承继承具有 ,即当基类本身也是某一个类的派生类时,底层的派生类也会自动继承间接基类的成员。规律性传递性重复性多样性下列说法中错误的是 。公有继承时基类中的public成员在派生类中仍是public的公有继承时基类中的private成员在派生类中仍是private的私有继承时基类中的public成员在派生类中是private的保护继承时基类中的public成员在派生类中是protected的8下列关于虚基类的描述中,错误的是 。虚基类成员的初始化由最派生类完成虚基类成员的初始化次数与虚基类下面的派生类个数有关设置虚基类的目的是消除二义性带有虚基类的多层派生类构造函数的成员初始化列表中都要列出对虚基类构造函数的调用C++类体系中,不能被派生类继承的有 。构造函数虚函数静态成员函数赋值操作函数下列关于动态联编的描述中,错误的是 。动态联编是以虚函数为基础的动态联编是在运行时确定所调用的函数代码的动态联编调用函数操作是通过指向对象的指针或对象引用实现的动态联编是在编译时确定操作函数的课程 班级 姓名 学号 … 密 ……封… 线…安徽工业大学试题纸(二)关于C++与C语言的关系的描述中,错误的是()C语言是C++的一个子集C++对C语言是兼容的C++对C语言进行了一些改进C++和C语言都是面向对象的定义int*p[9]等价的是()A、intp[9]; B、int*p; C、int*(p[9]); D、int(*p)[9];设intn=0;,下列表示引用的方法中,( )是正确的。Aint&x=n;Bint&y=10;Cint&z;Dfloat&t=&nTOC\o"1-5"\h\z假定Point为一个类,则执行Pointa[3],b(1,2),*p语句时,自动调用该类构造函数 次。A) 2B) 3C) 4D) 5对类的构造函数和析构函数描述正确的是 。A) 构造函数可以重载,析构函数不能重载B) 构造函数不能重载,析构函数可以重载C) 构造函数可以重载,析构函数也可以重载D) 构造函数不能重载,析构函数也不能重载在C++中,数据封装要解决的问题是 。A) 数据的规范化B) 便于数据转换C) 避免数据丢失D) 防止不同模块之间数据的非法访问对于类中定义的成员,其默认的访问权限为 。A) publicB) protectedC) privateD) static类的析构函数的作用是 。A) 一般成员函数B) 类的初始化C) 对象的初始化D) 对象被删除时的清理工作对于常数据成员,下面描述正确的是 。A) 常数据成员可以不初始化,并且不能更新B) 常数据成员必须被初始化,并且不能更新C) 常数据成员可以不初始化,并且可以被更新D) 常数据成员必须被初始化,并且可以被更新引入内联函数的主要目的是 。A)缩短程序代码,少占用内存空间 B)既可以保证程序的可读性,又能提高程序的运行效率C)占用内存空间少,执行速度快 D)使程序的结构比较清晰

课程.班级..姓名.学号.课程.班级..姓名.学号.安徽工业大学试题纸(三)二、填空题(20空,120=20分)1.2.3.4.5.1.2.3.4.5.6.7.&9.10.11.类是对具有共同属性和行为的一类事物的抽象描述,共同属性被描述为类中的非成员函数应声明为类的 才能访问这个类的private成员。C++提供的 机制允许一个派生类继承多个基类,即使这些基类是相互无关的。设置虚基类的目的是 ,设置虚函数的目的是 拷贝构造函数用在三种情形,分别是: 、 和在C++语言中,每个类都有一个隐含的指针叫做 指针。该指针指向使用const语句定义一个标识符常量时,则必须对它同时进行 抽象类指的是类的定义中包含 。赋值兼容规则指的 类的对象可以替代基类的对象进行使用。指针定义char*constp表示 是常量;指针定义constchar*p表示 重载函数的 是相同的,但 是不同的。.数据类型,访问void类型指针指向的数据需要进行.,共同行为被描述为类中的是常量。12.void类型的指针可以指向 三•判断题(1X10=1010分)TOC\o"1-5"\h\z派生类可以是组合类 ( )2.3.2.3.4.5.6.7.8.9.友元关系可以在类之间传递 (公有继承下,派生类的对象对它的基类成员的私有成员是可以访问(虚函数是一种特殊的虚函数,它没有具体的定义析构函数有且只有一个在类中,如果不做特别说明,所指成员均为私有类型基类和派生类中出现同名函数,一定存在二义性问题对虚函数的调用必须是动态联编10.对对象成员的构造函数的调用顺序取决于这些对象成员在类中说明的顺序,与它们在成员初始化列表中给出的顺序无关.(四■读程题■每B小龍觀^共»6分■注意窪動学院回学做—5、出陛题制i算動学院目学做4四题)下面的程序有什么问题,请指出来#includeviostream.h.>classA{public:voidfun(){countvv"a.fUn"v<endll;}};classB{public:voidfun(){countvv"b.fhn"vvendll;}voidgun(){countvv"b.gun"v<endll;}};classC:publicA,publicB{private:intb;public:voidgun(){countvv"c.fUn"v<endl;}voidhun(){fun();}};课程 班级 姓名 学号 … 密 ……封… 线…2...写出下面程序运行的结果classtest{private:intnum;public:test();intget_int(){returnnum;}~test();};test::test(){num=0;}test::~test(){coutvv"Destructorisactive"vvendl;}voidmain(){testx[3];coutvv"Exitingmain"vvendl;}找出下面程序段中的错误语句,并说明出错的原因。ClassX{private:inta;staticints;public:voidfun(){s=10;}staticvoidsfun(X&);};voidX::sfun(X&r){ a=10;r.a=10;}分析下面的程序progl的输出结果#includeviostream.h>voidmain(){intnum=500;int&ref=num;coutvvref;ref=ref+100;coutvv""vvnum;num=num+50;coutvv""vvref;}写出下面程序输出的结果#includeviostream.h>voidswap(inta,intb);intmain(){intx(5),y(10);coutvv"x="vvxvv"y="vvyvvendl;swap(x,y);coutvv"x="vvxvv"y="vvyvvendl;return0;}voidswap(inta,intb){intt;t=a;a=b;b=t;}写出下列程序的结果#includeviostream.h>classnumber{private:intval;public:number(inti){val=i;}numberoperator+(inti);intget_value(){returnval;}};numbernumber::operator+(inti){returnnumber(val+i);}classnum:publicnumber{public:num(inti):number(i){}};voidmain(){numbern(33);inti=3;n=n+3;coutvv"n.valueis"vvn.get_value()vvendl;}五、 简答题(每小题4分,共12分)什么是二义性问题?如何解决二义性问题?组合类构造函数的功能是什么?如何执行的?3•什么是运算符重载?运算符重载是如何实现的?六、 编程题(每小题6分,共12分。注意:计算机学院同学做2、4两题,非计算机学院同学做1、3两题)定义一个矩形类,有长、宽两个属性,有成员函数计算矩形的面积。定义一个复数类Complex,使得下面的代码能够工作。Complexc1(3,5);Complexc2(4);c1.add(c2);c1.show();定义一个Doucument类,有数据成员name,从Document类派生出Book类,增加数据成员pageCount。设Point类定义如下所示,对Po

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论