奥鹏地大《面向对象程序设计(新)》在线作业一标准答案_第1页
奥鹏地大《面向对象程序设计(新)》在线作业一标准答案_第2页
奥鹏地大《面向对象程序设计(新)》在线作业一标准答案_第3页
奥鹏地大《面向对象程序设计(新)》在线作业一标准答案_第4页
奥鹏地大《面向对象程序设计(新)》在线作业一标准答案_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

中国地质大学(北京)面向对象程序设计(新)》在线作业一参考答案地大《面向对象程序设计(新)》在线作业一有如下定义:inta[5]={l,3,5,7,9},*p=a;下列表达式中不能得到数值5的是()【选项】:Aa[2]Ba[3]C*(p+2)D*p+4【答案】:B设int*p2=&x,*p1=a;p2=*b;则a和b的类型分别是()【选项】:Aint*和intBint*和int**Cint和int*Dint*和int*【答案】:B3.下列关于虚基类的描述,错误的是()【选项】:A设置虚基类的目的是为了消除二义性B虚基类的构造函数在非虚基类之后调用C若同一层中包含多个虚基类,这些虚基类的构造函数按它们说明的次序调用D若虚基类由非虚基类派生而来,则仍然先调用基类构造函数,再调用派生类的构造函数【答案】:B有如下类声明:classBase{protected;intamount;public;Base(intn=0):amount(n){}intgetAmount()const{retumamount;}};classDerived:publicBase{protected;intvalue;public;Derived(intm,intn):value(m).Base(n){}IntgetData()const{returnvalue+amount;}};已知【选项】:Ax.value+x.getAmount()Bx.getData()-x.gctAmount()Cx.getData()-x.amountDx.value+x.amount【答案】:B下面是一个模板声明的开始部分:templute<typenameT>double__由此可知()【选项】:A这可能是一个函数模板的声明B这可能是一个类模板的声明C这既可能是一个函数模板的声明,也可能是一个类模板的声明D这肯定是一个错误的模板声明【答案】:A6.在类的定义中,用于为对象分配内存空间,对类的数据成员进行初始化并执行其他内部管理操作的函数是()【选项】:A友元函数B虚函数C构造函数D析构函数【答案】:C7•假定要对类AB定义加号操作符重载成员函数,实现两个AB类对象的加法,并返回相加结果,则该成员函数的声明语句为()【选项】:AABoperator+(AB&a,AB&b)BABoperator+(AB&a)Coperator+(ABa)DAB&operator+()【答案】:B类的析构函数的作用是()【选项】:A一般成员函数的初始化B类的初始化C对象的初始化D删除类创建的对象【答案】:D设intf(int);和intg(int);是函数f和g的原形,以下将f作为语句调用的是()【选项】:Ag(f(3));Bf(g(3));Cg(f(3)+2);Dp=f(g(3)+1);【答案】:B10.有如下程序:#includeclassBASE{charc;public:BASE(charn):c(n){}virtual~BASE(){cout<<C;}};classDERIVED:publicBASE{charc;public:DERIVED(charn):BASE(n+1),c(n){}~DERIVED(){cout【选项】:AXYBYXCXDY【答案】:A11.下面描述中,表达错误的是()【选项】:A公有继承时基类中的public成员在派生类中仍是public的B公有继承是基类中的private成员在派生类中仍是private的C公有继承时基类中的protected成员在派生类中仍是protected的D私有继承时基类中的public成员在派生类中是private的【答案】:B12.对于全局函数intf(void),与其完全等价的函数原型为()【选项】:Aint&f();Bintf(void)const;Cconstintf();DA、B、C都不是【答案】:C类TM和类TN是两个独立的类,那么类TM中哪种形式的数据成员一定是不允许的()【选项】:ATM*a;BTN&a;CTMa;DTNa;【答案】:C在C++语言中,数据封装要解决的问题是()【选项】:A数据的规范化B便于数据转换C避免数据丢失D防止不同模块之间数据的非法访问【答案】:D已知Value是一个类,Value是Value的一个对象。下列以非成员函数形式重载的运算符函数原形中,正确的是()【选项】:AValueoperator+(Valuev,inti);BValueoperator+(Valuev=value,inti);CValueoperator+(Valuevinti=0);DValueoperator+(Valuev=value,inti=0);【答案】:B赋值运算符重载函数与拷贝构造函数的区别是什么()【选项】:A都是拷贝一个类的对象给另一个同类型的类的对象B拷贝构造函数是用已存在的对象的各成员的当前值来创建一个相同的新对象C赋值运算符重载函数要把一个已存在对象的各成员的当前值赋给另一个已存在的同类对象【答案】:A.B.C关于构造函数说法正确的是()【选项】:A函数名只能是类名B返回类型可以是任意的C参数个数和类型可以是任意的D在对象创建时自动调用【答案】:A.C.D下列有关抽象类和纯虚函数的叙述中,错误的是()【选项】:A拥有纯虚函数的类是抽象类,能用来定义对象B抽象类的派生类若不实现纯虚函数,它也是抽象类C纯虚函数的声明以“=0;结”束D纯虚函数都不能有函数体【答案】:A.D以下哪些是面向对象程序设计的特征()【选项】:A抽象B封装C继承D多态【答案】:A.B.C.D关于公共静态数据成员,下面说法正确的是()【选项】:A在main函数之前创建B跟某个具体对象无关C可以用类名和成员名直接访问D需要在类体外初始化【答案】:A.B.C.D多态的实现分为两类:编译时的多态和运行时的多态【选项】:A错误B正确【答案】:B默认的继承

温馨提示

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

评论

0/150

提交评论