面向对象程序设计练习题-西安交通大学网络教育学院_第1页
面向对象程序设计练习题-西安交通大学网络教育学院_第2页
面向对象程序设计练习题-西安交通大学网络教育学院_第3页
面向对象程序设计练习题-西安交通大学网络教育学院_第4页
面向对象程序设计练习题-西安交通大学网络教育学院_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

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

文档简介

2019年春季《面向对象程序设计》在线作业一、单选题(共50道试题,共100分。)V1.

在创建派生类对象时,构造函数的执行顺序是()。A.对象成员构造函数、基类构造函数、派生类本身的构造函数;B.派生类本身的构造函数、基类构造函数、对象成员构造函数;C.基类构造函数、派生类本身的构造函数、对象成员构造函数;D.基类构造函数、对象成员构造函数、派生类本身的构造函数。正确答案:D

满分:2

分2.

下列对引用的陈述中错误的是()。A.每一个引用都是其所引用对象的别名,因此必须初始化;B.形式上针对引用的操作实际上作用于它所引用的对象;C.一旦定义了引用,一切针对其所引用对象的操作只能通过该引用间接进行;D.不需要单独为引用分配存储空间。正确答案:B

满分:2

分3.

一个类的构造函数为“B(intax,intbx):a(ax),b(bx){}”,执行“Bx(1,2),y(3,4);x=y;”语句序列后x.a的值为()。A.1B.2C.3D.4正确答案:C

满分:2

分4.

下列说法不正确的是()。A.在类中,成员的默认访问特性是私有的。B.类封装了数据和操作。C.类实质上是一种数据类型。D.在类的定义中,必须包含private、publiE.protected三种存取方式对应得部分。正确答案:D

满分:2

分5.

基类A中有成员函数fn1()、fn2(),在派生类B中重载了成员函数fn1()(即重新定义了fn1()),但没有重载其成员函数fn2()。如果在派生类B中调用基类A的成员函数fn1()(不是B中重载的数fn1())和fn2(),则正确的方式是()。A.A::fn1()和fn2();B.fn1()和A::fn2();C.A::fn1()和A::fn2();D.fn1()和fn2();正确答案:A

满分:2

分6.

下面是五条顺序出现的声明语句,非法的初始化语句是()。A.inti=–1;B.constintic=i;C.constint*pc=⁣D.int*constcpi=⁣E、constint*constcpic=⁣正确答案:D

满分:2

分7.

下列关于私有继承的说法中正确的是()。A.基类成员对派生类新定义的成员函数是不可见的;B.基类成员对派生类新定义的成员函数是可见的;C.只有基类成员中的公有成员对派生类新定义的成员函数是可见的;D.基类成员中的保护成员对派生类新定义的成员函数是可见的。正确答案:D

满分:2

分8.

用new运算符创建一个含有10个元素的一维整型数组的正确语句是()。A.intp=newint(10);B.intp=newint[10];C.int*p=newint[10];D.int*p=newint(10);正确答案:C

满分:2

分9.

下面是四条顺序出现的声明语句,非法的初始化语句是()。A.inti=–1;B.constintic=i;C.constint*pc=⁣D.int*constcpi=⁣正确答案:D

满分:2

分10.

对于下面的两条语句,正确的描述是()。MyObjecta(2),b(a),c;c=b=a;A.拷贝构造函数执行了1次;B.赋值运算符重载函数执行了3次;C.拷贝构造函数函数执行了3次;D.赋值运算符重载函数执行了1次;正确答案:A

满分:2

分11.

对于类模板,其类型形参可以作为()。A.成员函数的形参类型B.成员函数的返回类型C.数据成员的类型D.以上三种均可正确答案:D

满分:2

分12.

函数重载与函数模板的说法错误的是()。A.当函数的函数体不同时,可以把函数设计为重载函数;B.当函数体相同,仅仅操作的数据类型不同时,可把函数设计为模板;C.重载函数和函数模板都是抽象的,都需实例化;D.函数模板有待于实例化为模板函数,重载函数可以直接引用。正确答案:C

满分:2

分13.

由C目标文件连接而成的可执行文件的缺省扩展名为()。A.cppB.exeC.objD.lik正确答案:B

满分:2

分14.

下述静态数据成员的特性中,()是错误的。A.声明静态数据成员时前面要加修饰符static。B.静态数据成员要在类体外进行初始化。C.在程序中引用静态数据成员时,要在静态数据成员名前加<类名>和作用域运算符。D.静态数据成员是本类中个别对象所共享的。正确答案:D

满分:2

分15.

以下关于函数模板的论述中,正确的是()。A.一旦定义了函数模板,就不能再定义同名的重载函数;B.从同一个函数模板实例化后得到的多个模板函数属于函数重载;C.函数模板中只有一种参数;D.在定义函数模板时,template语句与函数模板定义语句之间可以有别的语句。正确答案:B

满分:2

分16.

带有虚基类的多层派生类构造函数的成员初始化列表中都要列出虚基类的构造函数,这样将对虚基类的子对象初始化()。A.与虚基类下面的派生类个数有关B.多次C.二次D.一次正确答案:D

满分:2

分17.

关于运行时多态的下列描述中,()是错误的。A.运行时多态是以虚函数为基础的;B.运行时多态是在运行时确定所调用的函数代码的;C.用基类指针或引用所标识的派生类对象来操作虚函数才能实现运行时多态;D.运行时多态是在编译时确定操作函数的。正确答案:D

满分:2

分18.

下列关于类的访问控制机制说法错误的是()。A.静态数据成员通常都定义为公有类型。B.一个对象的私有成员对于同类的另一个对象是可见的。C.友元机制破坏了类的封装性。D.基类的保护成员对派生类新定义的成员函数是可见的。正确答案:A

满分:2

分19.

下列程序段不会发生二义性的是()。A.intfun(doublep){...;}B.intfun(floatp){...;}floatfun(floatp){...;}floatfun(unsignedp){...;}intx;intx;x=fun(0);x=fun(0);C.intfun(inti,intj=2){...;}D.intfun(inti=2,intj=2){...;}floatfun(inti){...;}intfun(int*p){...;}cout<<fun(5);cout<<fun(5);正确答案:D

满分:2

分20.

关于静态成员,正确的说法是()。A.静态成员函数可以直接访问该类中的非静态成员B.非静态成员函数不能直接访问该类中的静态成员C.静态数据成员同其它数据成员一样通过构造函数进行初始化D.静态成员在任何对象创建之前就已经创建正确答案:D

满分:2

分21.

下面关于引用的说法错误的是()。A.引用是被引用对象的别名B.对引用的修改就是对被引用对象的修改,反之亦然C.引用不一定立即初始化D.引用不能建立数组正确答案:C

满分:2

分22.

下列关于虚基类的说法错误的是()。A.有引入虚基类的目的是解决二义性的问题;B.因为虚基类可被多个派生类继承,因此可以有多个副本以适应不同的派生类;C.若某个类被说明为虚基类,则被重复继承的该类成员在派生类对象中只有一个副本;D.在派生类对象创建时,要保证虚基类的构造函数只被调用一次。正确答案:B

满分:2

分23.

下列说法不正确的是()。A.在类中不能对所定义的数据成员进行初始化。B.类的公有成员函数是类与外界的接口。C.同一个类的两个对象占用相同的内存空间。D.类实现数据隐藏。正确答案:C

满分:2

分24.

下列程序段不会发生二义性的是()。A.intfun(doublep){...;}B.intfun(floatp){...;}floatfun(floatp){...;}floatfun(unsignedp){...;}intx;intx;x=fun(0);x=fun(0);C.intfun(inti,intj=2){...;}D.intfun(inti=2,intj=2){...;}floatfun(inti){...;}intfun(int*p){...;}cout<<fun(5);cout<<fun(5);正确答案:D

满分:2

分25.

下列说法错误的是()。A.在类中,成员的默认访问特性是私有的;B.类封装了数据和操作;C.类实质上是一种数据类型;D.在类的定义中,必须包含private、publiE.protected三种存取方式对应得部分。正确答案:D

满分:2

分26.

下列说法错误的是()。A.在类中不能对所定义的数据成员进行初始化;B.类的公有成员函数是类与外界的接口;C.同一个类的两个对象占用相同的内存空间;D.类实现数据隐藏。正确答案:C

满分:2

分27.

若有如下函数模板定义,则正确使用该函数模板的语句是()。template<classtype>voidadd(typea,typeb,type&c){c=ab;}A.floatx,y,z;add(x,y,z);B.intx,y,z;add(x,y,&z);C.floatx,y;intz;add(x,y,z);D.floatx,y;intz;add(x,y,&z);正确答案:A

满分:2

分28.

下列函数中,()不能重载。A.一般的成员函数;B.一般的非成员函数;C.析构函数;D.构造函数。正确答案:C

满分:2

分29.

下列对派生类的描述中,()是错的。A.一个派生类可以作为另一个派生类的基类;B.派生类至少有一个基类;C.派生类的成员除了它自己的成员外,还包含了它的基类的成员;D.派生类中继承的基类成员的访问权限到派生类保持不变;正确答案:D

满分:2

分30.

关于以下程序段中语法错误的正确描述是()。#include<iostream.h>voidmain(){constchar*p1=”string1”;char*constp2=”string”;char*p3=”string3”;p1[2]=’a’;//①p2[2]=’b’;//②p1=p3;//③p2=p3;//④}A.①②③④均错误B.①和④错误C.②和③错误D.③和④错误正确答案:B

满分:2

分31.

下列对继承关系的描述中,()是正确的。A.在公有继承中,基类中的公有成员和私有成员在派生类中都是可见的;B.在公有继承中,基类中只有公有成员对派生类的对象是可见的;C.在私有继承中,基类中只有公有成员对派生类是可见的;D.在私有继承中,基类中的保护成员对派生类的对象是可见的;正确答案:D

满分:2

分32.

设置虚基类的目的是()。A.简化程序;B.消除二义性;C.提高运行效率;D.减少目标代码;正确答案:B

满分:2

分33.

下列不是C基本数据类型的是()。A.intB.stringC.charD.void正确答案:B

满分:2

分34.

下列对继承关系的描述中,正确的是()。A.在公有继承中,基类中的公有成员和私有成员在派生类中都是可见的;B.在公有继承中,基类中只有公有成员对派生类的对象是可见的;C.在私有继承中,基类中只有公有成员对派生类是可见的;D.在私有继承中,基类中的保护成员对派生类的对象是可见的;正确答案:D

满分:2

分35.

对于如下类的定义,下面语句组中出现语法错误的是()。classX{inta;public:X(intx=0){a=x;}};classY:classX{intb;public:Y(intx=0,inty=0):X(x){b=x;}};A.X*pa=newY(1,2);B.Xa1=Y(1,3);C.Yb1(2,3);X&a3=b1;D.Xa4(10);Yb2=a4;正确答案:D

满分:2

分36.

关于继承中出现的二义性的描述中,()是错误的。A.一个派生类的两个基类中都有某个同名成员,在派生类中对这个成员的访问可能出现二义性;B.解决二义性的最常用的方法是对成员名的限定法;C.在单继承情况下,派生类中对基类成员的访问也会出现二义性;D.一个派生类是从两个基类派生出来的,而这两个基类又有一个共同的基类,对该基类成员进正确答案:C

满分:2

分37.

下面对模板的声明,正确的是()。A.template<T>B.template<classT1,T2>C.template<classT1,classT2>D.template<T1,T2>正确答案:C

满分:2

分38.

下述静态数据成员的特性中,()是错误的。A.声明静态数据成员时前面要加修饰符static。B.静态数据成员要在类体外进行初始化。C.在程序中引用静态数据成员时,要在静态数据成员名前加<类名>和作用域运算符。D.静态数据成员是一个类的个别对象所共享的。正确答案:D

满分:2

分39.

下面对友元的错误描述是()。A.友元函数不可访问对象的private成员B.一个类的成员函数可以是另一个类的友元C.友元类和友元函数均用关键字friend声明D.友元函数可以访问对象的protected成员正确答案:A

满分:2

分40.

已知:p是一个指向类A数据成员m的指针,A1是类A的一个对象。如果要给A1的m赋值为5,()是正确的。A.A1.p=5;B.A1->p=5;C.A1.*p=5;D.*A1.p=5;正确答案:C

满分:2

分41.

派生类的构造函数的成员初始化列表中,不能包含()。A.基类的构造函数;B.派生类中子对象的初始化;C.基类的子对象初始化;D.派生类中一般数据成员的初始化;正确答案:C

满分:2

分42.

下面是重载双目运算符的普通函数原形,其中最符合原来含义的是()。A.Valueoperator(Value,Value);B.Valueoperator(Value,int);C.Value&operator(Value,Value*);D.Value&operator(Value&,Value&);正确答案:A

满分:2

分43.

不可以成为类的数据成员的是()。A.自身类的对象B.另一个类的对象C.自身类的指针或引用D.其他基本数据类型正确答案:A

满分:2

分44.

类模板的作用是可以将其实例化后得到一个具体的()。A

温馨提示

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

评论

0/150

提交评论