




下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上 第 1 页班级:姓名:学号:福建工程学院2009 -2010学年第二学期期末考试 (B卷) 共 9 页 课程名称:面向对象程序设计 考试方式:开卷( )闭卷()题号一二三四五六七八九十总分统分人签名得分 密 封 线考生注意事项:1、本试卷共 9 页,请查看试卷中是否有缺页。 2、考试结束后,考生不得将试卷、答题纸和草稿纸带出考场。教师注意事项:如果整门课程由一个教师评卷的,只需在累分人栏目签名,题首的评卷人栏目可不签名。一、单项选择题 (每小题2分,共30分)得分评卷人 1. 重载一个运算符时,其参数表中没有任何参数,这表明该运算符是( B )A.作为友元函数重载的
2、1元运算符B.作为成员函数重载的1元运算符C.作为友元函数重载的2元运算符D.作为成员函数重载的2元运算符2. 在C+中把不返回任何类型的函数应该说明为( C )。A. int B. charC. void D. double3. 要实现动态联编必须( D )。A.通过成员名限定来调用虚函数 B.通过对象名来调用虚函数C.通过派生类对象来调用虚函数 D.通过对象指针或引用来调用虚函数4在C+中,封装是借助( B )达到目的。 A结构 B类 C数组 D函数 第2页 5. 假定AA是一个类,“AA* abc()const;”是该类中一个成员函数的原型,若该函数返回this值,当用x.abc()调用
3、该成员函数后,x的值( C )A.已经被改变 B.可能被改变C.不变 D.受到函数调用的影响6.以下关于抽象类的描述,( D ) 是正确的。A. 不能说明抽象类的指针或引用B. 可以说明抽象类对象C. 抽象类的纯虚函数的实现可以由自身给出,也可以由派生类给出D. 抽象类的纯虚函数的实现由派生类给出7. 以下关于函数模板叙述正确的是( C )A.函数模板也是一个具体类型的函数B.函数模板的类型参数与函数的参数是同一个概念C.通过使用不同的类型参数,函数模板可以生成不同类型的函数D.用函数模板定义的函数没有类型8. 建立含有类对象成员的派生类对象时,其构造函数的执行顺序为( C )A.自己所属类、
4、对象成员所属类、基类的构造函数B对象成员所属类、基类、自己所属类的构造函数C基类、对象成员所属类、自己所属类的构造函数D基类、自己所属类、对象成员所属类的构造函数9. 构造函数不具备的特征是 ( D )A.构造函数的函数名与类名相同B.构造函数可以重载C.构造函数可以设置默认参数D.构造函数必须指定类型说明 密 封 线班级:姓名:学号: 第 3 页10. 实现两个相同类型数加法的函数模板的声明中( D )是正确的。A.add(T x,T y) B.T add(x,y)C.T add(T x,y) D.T add(T x,T y)11C+ 对 C 语言作了很多改进,即从面向过程变成为面向对象的主
5、要原因是( D )A.增加了一些新的运算符 B.允许函数重载,并允许设置缺省参数 C.规定函数说明符必须用原型 D.引进了类和对象的概念。12. 若Sample类中的一个成员函数说明为void set(Sample&a),则Sample&a的含义是( B )。A.指向类Sample的名为a的指针B.a是类Sample的对象引用,用来作函数Set()的形参C.将a的地址赋给变量SetD.变量Sample与a按位与的结果作为函数Set的参数13. 在( C )情况下适宜采用inline定义内联函数。A.函数体含有循环语句 B.函数体含有递归语句C.需要加快程序的执行速度 D.函数代
6、码多、不常调用14. this指针存在的目的是(B )。A保证基类公有成员在子类中可以被访问B保证每个对象拥有自己的数据成员,但共享处理这些数据成员的代码C保证基类保护成员在子类中可以被访问D保证基类私有成员在子类中可以被访问 15.类的析构函数是对一个对象进行( B )操作时自动调用。 A.建立 B撤消C赋值 D引用第4页二、填空题(每空1分,共20分)得分评卷人 1. 带有_纯虚函数_的类称为抽象类,它只能作为_基类_来使用。2同一个类的两个对象,其数据成员是不同的,但 成员函数 是共享的。3设在程序中使用如下语句申请了一个对象数组:Point * ptr = new Point2;则在需
7、要释放ptr指向的动态数组对象时,所使用的语句是_delete ptr_ _。4. 对象传送的消息一般由3部分组成:接收对象名、调用操作名和_必要的参数_。5. 类成员的默认访问方式是 私有 。6类完成了面向对象程序设计的 封装 特性。7执行下列代码 cout <<Hex:<< hex << 255;程序的输出结果为Hex:ff_。8C+的流库预定义了4个流,它们是cin、cout、cerr 和clog。9. 类中运算符重载一般采用两种形式: 非静态成员函数 和 非成员函数 。10. 基类的公有成员在私有派生类中是_私有_成员,基类的保护成员在公有派生类中是
8、_保护_成员。11. 对虚函数使用对象指针或引用,系统使用_动态_联编,对虚函数使用对象调用时,系统使用_静态_联编。12将成员函数放在类外,所使用的作用域运算符为 : 。13. 重载“<<”操作符时,应声明为 _非成员_ 函数。14. 所谓赋值兼容规则是指在公有派生情况下,一个_派生_类的对象可以作为_基_类的对象来使用的地方。15. 若y是x的引用,则对y的操作就是对_x_的操作。 密 封 线班级:姓名:学号: 第 5 页三、程序分析(每小题4分,共20分)得分评卷人 1.阅读程序,写出运行结果:#include <iostream.h>class aa publi
9、c: virtual int func () return 0; ; 运行结果:580class test: public aa public: int func() return 58; ; void main() test d; aa& b = d; cout << b.func() << endl; cout << b.aa:func() << endl; 2.阅读程序,写出运行结果:#include <iostreamh>运行结果:S1与S2的数据成员不相等S1与S2的数据成员相等 template <class
10、 T> class Sample T n; public: Sample(T i)n=i; int operator=(Sample &); ; template <class T> int Sample<T>:operator=(Samples) if(n=s.n) return 1; else return 0; void main( ) Sample<int>sl(2),s2(3); cout<<s1与s2的数据成员<<(sl=s2 ?相等:不相等)<<endl; Sample<double>
11、;s3(2.5),s4(2.5); cout<<s3与s4的数据成员<<(s3=s4 ? 相等:不相等)<<endl; 3. 阅读程序,写出运行结果#include <iostream.h>class A private: int X,Y; public: A( ) X=Y=0; cout<<"Default Constructor called."<<endl; A(int xx,int yy) X=xx;Y=yy; cout<< "Constructor called.&quo
12、t;<<endl; A( ) cout<<"Destructor called."<<endl; 运行结果:Default Constructor called.Destructor called.Constructor called.Destructor called.;void main()A *p1=new A;delete p1; p1=new A(1,2);delete p1; 密 封 线班级:姓名:学号: 第 7 页4. 下面程序中有一处错误,请用下横线标出错误所在行并提出修改意见。class MyClassint x=20,
13、y;(这一句错,因为类内不能直接对数据成员初始化。可以将x定义为静态数据成员,再在类外初始化为20)public:MyClass(int aa,int bb);int GetX();int GetY(); ;5. 下面程序中有一处错误,请用下横线标出错误所在行并提出修改意见。class Oneprotected: int a;(将protected改为public)public: void setOne(int x)a=x;void showOne()cout<<"a="<<a<<endl;class Two:private One (将private改为public)public: void setTwo(int x)a=x;void main() Two obj;obj.setTwo(10);cout<<"obj.a="<<obj.a<<endl;(这句错,因为无法直接访问保护数据成员。修改意见用紫色的修改)四、编程题(每题10分,共30分)得分评卷人 1.编写复数类Compl
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030年中国醋酸甲酯市场运行态势及发展趋势分析报告
- 2025-2030年中国螺丝刀行业运营状况与发展战略研究报告
- 2025-2030年中国苯酚丙酮市场运营状况与发展潜力分析报告
- 2025-2030年中国罐装茶行业发展趋势及竞争调研分析报告
- 2025-2030年中国纸尿裤制造行业运行态势及投资战略研究报告
- 2025-2030年中国粽子市场运行状况及发展趋势分析报告
- 2025-2030年中国管理财务软件市场发展现状及前景趋势分析报告
- 2025福建省建筑安全员-C证考试(专职安全员)题库附答案
- 2025-2030年中国电石产业运行态势与发展趋势分析报告
- 皖西卫生职业学院《贸易实务操作实训》2023-2024学年第二学期期末试卷
- (完整版)小学英语语法大全-附练习题,推荐文档
- 数学人教版六年级下册简便运算课件
- 非遗申请书范本
- 注塑参数表完整版
- 吊顶工程课件
- 山东大学出版社六年级上册传统文化第一单元宽仁厚爱备课教案
- 2023年金华职业技术学院高职单招(英语)试题库含答案解析
- GB/T 16492-1996光学和光学仪器环境要求总则、定义、气候带及其参数
- FZ/T 01010-2012涂层织物涂层剥离强力的测定
- 混凝土耐久性课件
- 情报学与情报分析基础知识课件
评论
0/150
提交评论