电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

西安石油大学面向对象程序设计试题4VIP专享VIP免费

西安石油大学面向对象程序设计试题4_第1页
西安石油大学面向对象程序设计试题4_第2页
西安石油大学面向对象程序设计试题4_第3页
2005年自考面向对象程序设计模拟试题(一)一、单项选择题(本大题共10小题,共20分)在每小题列出的四个选项中,只有一个是符合题目要求的,请将其代码填在题后的括号内。错选或未选均无分。单项选择题(本大题共20小题,每小题1分,共20分)1.面向对象程序设计中的数据隐藏指的是参考答案为:DA.输入数据必须输入保密口令B.数据经过加密处理C.对象内部数据结构上建有防火墙D.对象内部数据结构的不可访问性[解析]输入数据必须输入保密口令和数据经过加密处理都不是面向对象程序设计的特征;对象内部数据结构上也不可能建有防火墙,所以它们都不是面向对象程序设计中所指的数据隐藏。面向对象程序设计系统中的封装单位是对象,对象之间只能通过接口进行信息交流,外部不能对对象中的数据随意地进行访问,这就造成了对象内部数据结构的不可访问性,也使得数据被隐藏在对象中。这就是面向对象程序设计中的数据隐藏所指。2.下列各项中不符合函数重载必须满足的条件的是参考答案为:DA.必须有不同的参数个数B.对应的参数类型必须不相同C.A和B必须同时满足D.A和B只要满足一个即可[解析]我们知道,在同一个作用域中,要实现函数重载必须满足的条件的是:①有不同的参数个数;或者②对应的参数有不相同的数据类型,即①和②中只要有一个满足就可以了。当然两者都满足更好,但这不是必须的。3.下列带缺省值参数的函数说明中,正确的说明是参考答案为:AA.intFun(intx,inty=2,intz=3);B.intFun(intx=1,inty,intz=3);C.intFun(intx,inty=2,intz);D.intFun(intx=1,inty,intz=3);[解析]在带缺省值参数的函数说明中,正确的说明应该是无缺省值的参数依次排列在参数表的左边,排完无缺省值的参数后,再依次排列带缺省值的参数。从所给出的四个选项来看,只有―intFun(intx,inty=2,intz=3)‖符合这条规定,其它的都不符合。4.有如下的对类―CSample‖的说明,其中()是错误的。classCSample{参考答案为:AA.inta=23;B.CSample();public:C.CSample(intval);D.~CSample();}[解析]在下面对类―CSample‖说明中,―CSample()‖和―CSample(intval)‖是该类重载的构造函数、―~CSample()‖是该类的析构函数,这三个语句都是正确的。错误的语句是―inta=23‖,因为它违反了在类的声明(不管是引用性声明,还是定义性声明)中都不能以赋值表达式的形式给它的数据成员进行初始化。5.已知类A中的一个成员函数的说明如下:voidSet(A&a);则该函数的参数―A&a‖的含义是参考答案为:CA.指向A的指针为aB.将变量a的地址赋给类AC.类A对象引用a用作函数的形参D.变量A与a按位与后作函数参数[解析]因为A是一个类,所以―A&a‖表示a是类A的对象,但因为对象a的前缀了符号―&‖,则―&a‖表示是类A的对象引用。所以―A&a‖的含义是类A对象引用a用作函数的形参。6.若类A和类B的定义如下:classA{public:inti,j;voidget();};classB:A{inti,j;protected:intk;public:voidmake();};voidB::make(){k=i*j;}则其中()是非法的表达式。参考答案为:DA.voidget();B.intk;C.voidmake();D.k=i*j;[解析]对于给定的四项中,前三项都是正确的,只有第四项是错误的。因为,类B是类A的私有派生类(缺省访问类型),所以A中的公类型的数据成员在类B中成为了私有数据成员,但函数―voidB::make()‖既然是类B的成员函数,则既可访问类A中的公有数据成员,也能访问类B中的私有数据成员,则表达式―k=i*j;‖造成了访问的二义性,即其中的i和j,到底是取自类A呢?还是取自类B呢?7.下面的主程序中,语句()是错误的。classA{inti;public:virtualvoidfun()=0;A(inta){i=a;}};classB{intj;public:voidfun(){cout<<‖B::fun()n‖;}B(intb,intc):A(b){j=c;}};voidmain()参考答案为:AA.{Aa(5);B.A*pa;C.Bb(7);D.B*pb;}[解析]在类A中,函数―virtualvoidfun()=0‖为纯虚函数,因此,类A为抽象类。作为抽象类,它是不能被用来定义具体对象的,而语句―Aa(5);‖恰恰是定义抽象类的对象的,所以它是错误的8.拷贝(复制)构造函数的作用是参考答案为:CA.进行数据类型的转换B.用对象调用成员函数C.用对象初始...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部