C++题目作业14.doc

上传人:hs****ma 文档编号:556436314 上传时间:2022-11-14 格式:DOC 页数:13 大小:106.50KB
返回 下载 相关 举报
C++题目作业14.doc_第1页
第1页 / 共13页
C++题目作业14.doc_第2页
第2页 / 共13页
C++题目作业14.doc_第3页
第3页 / 共13页
C++题目作业14.doc_第4页
第4页 / 共13页
C++题目作业14.doc_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《C++题目作业14.doc》由会员分享,可在线阅读,更多相关《C++题目作业14.doc(13页珍藏版)》请在金锄头文库上搜索。

1、HZAU-专业C+作业14(继承与多态性)判断题窗体顶端1.派生类的构造函数的初始化列表中如果不写对基类构造函数的调用,则自动调用基类的拷贝构造函数。f2.在多继承情况下,派生类的构造函数中基类构造函数的执行顺序取决于定义派生类时所指定的各基类的顺序。TTrueFalse3.一个派生类不能作为基类被别的派生类继承。FTrueFalse4.派生类的继承方式中有两种:公有继承和私有继承。FTrueFalse5.在私有继承中,基类中只有公有成员对派生类是可见的。FTrueFalse6.构造函数可以被继承。FTrueFalse7.在公有继承中,基类的成员在派生类中都可以直接使用。FTrueFalse8

2、.解决多继承下二义性问题的方法之一是使用作用域运算符。TTrueFalse9.派生类中至少包含了它的所有基类的成员,在这些成员中可能有的是不可访问。TTrueFalse10.虚函数是支持编译时的多态性。TTrueFalse11.在C+中,要实现动态联编,可以使用基类指针调用虚函数。tTrueFalse12.在派生类中,重载一个虚函数时,要求函数名、参数的个数、参数的类型、参数的顺序和函数返回值部分相同。fTrueFalse13.抽象类只能作为基类使用,其纯虚函数的实现由派生类来完成。tTrueFalse14.运算符重载只可以是类的成员函数和友元函数,不可以是普通函数。tTrueFalse15.

3、静态联编和动态联编都是在编译时进行的,二者的区别仅是前者对非虚函数,后者对虚函数。tTrueFalse16.动态联编指的是在运行期间来选择不同类的虚函数t。TrueFalse17.一个抽象类中可以包含有多个纯虚函数,一个派生类中也可以包含多个虚函数。tTrueFalse18.如果派生类没有实现虚函数,那么它将使用他的基类的虚函数。tTrueFalse19.含有纯虚函数的类称为抽象类,与抽象类相对应的是具体类。tTrueFalse20.析构函数可以说明为虚函数,而构造函数说明为虚函数没有意义t。TrueFalse选择题窗体顶端1.C+语言建立类族是通过( )实现的。 A. 类的嵌套B. 虚函数C

4、. 类的继承D. 抽象类2.下列对基类和派生类关系的描述中,错误的是( )。 A. 派生类是基类的具体化B. 派生类是基类的子集C. 派生类是基类定义的延续D. 派生类是基类的组合3.下列对派生类的描述中,错误的是( )。 A. 一个派生类可以作为另一个派生类的基类B. 派生类至少有一个基类C. 派生类的缺省继承方式是privateD. 派生类只继承了基类的公有成员和保护成员4.下列说法中错误的是( )。 A. 公有继承时基类中的public成员在派生类中仍是public的B. 公有继承时基类中的private成员在派生类中仍是private的C. 私有继承时基类中的public成员在派生类中

5、是private的D. 保护继承时基类中的public成员在派生类中是protected的5.下面叙述错误的是( )。 A. 对基类成员的访问能力在private派生类中和public派生类中是相同的B. 基类的private成员在public派生类中不可访问C. 基类中的public成员在protected派生类中是protected的D. 基类中的public成员在protected派生类中仍然是public的6.多继承的构造顺序可分为如下4步。 所有非虚基类的构造函数按照它们被继承的顺序构造;所有虚基类的构造函数按照它们被继承的顺序构造; 所有子对象的构造函数按照它们声明的顺序构造; 派

6、生类自己的构造函数体;这4个步骤的正确顺序是( )。 A. B. C. D. 7.下列虚基类的声明中,正确的是( )。 A. class virtual B: public AB. virtual class B: public AC. class B: public A virtualD. class B: virtual class A8.下面( )的叙述不符合赋值兼容规则。 A. 派生类的对象可以赋值给基类的对象B. 基类的对象可以赋值给派生类的对象C. 派生类的对象可以初始化基类的引用D. 派生类的对象的地址可以赋值给指向基类的指针9.对于虚函数定义的调用( )。 A. 一定使用动态联

7、编B. 一定使用静态联编C. 必须使用动态联编D. 不一定使用动态联编10.下列描述中,( )是抽象类的特征。 A. 可以说明虚函数B. 可以定义友元函数C. 可以进行构造函数D. 不能说明其对象11.关于纯虚函数和抽象类的描述中,错误的是( )。 A. 纯虚函数是一种特殊的虚函数,它没有具体的实现B. 抽象类是指具有纯虚函数的类C. 一个基类中说明有纯虚函数,该基类的派生类一定不再是抽象类D. 抽象类只能作为基类来使用,其纯虚函数的实现由派生类给出12.如果一个类至少有一个纯虚函数,那么就称该类为( )。 A. 抽象类B. 虚基类C. 派生类D. 以上都不对13.以下( )成员函数表示纯虚函

8、数。 A. virtual int vf(int);B. void vf(int)=0;C. virtual void vf()=0;D. virtual void vf(int) 14.一个类的层次结构中,定义有虚函数,并且都是公有继承,在下列情况下,实现动态联编的是( )。 A. 使用类的对象调用虚函数B. 使用类名限定调用虚函数,其格式如下::C. 使用构造函数调用虚函数D. 使用成员函数调用虚函数15.下列关于动态联编的描述中,错误的是( )。 A. 动态联编是函数联编的一种方式,它是在运行时来选择联编函数的B. 动态联编又可称为动态多态性,它是C+语言中多态性的一种重要形式C. 函数

9、重载和运算符重载都属于动态联编D. 动态联编只是用来选择虚函数的程序设计题1. (5分)点-圆类(虚函数)题目描述下面是点-圆类层次继承中的虚函数,请填空补充完成下列程序。#includeusing namespace std;class Pointfloat x,y;public:Point()Point( (1) )x=a;y=b;(2) double area()return 0.0;( 3 )double Pi=3.141593;class Circle:public Pointprivate:double Radius;public:Circle(double r)(4) ;virt

10、ual double area()return Pi*Radius*Radius;int main()Circle c(1);coutc.area();return 0;输入描述无输出描述略输入样例无输出样例3.14159窗体底端2. (5分)时间类相加题目描述下面是将加法运算符(+)重载为友元函数的应用,该运算符实现时间类的加法运算,请完成下列程序。#includeusing namespace std;class angle(1)hours,mins,secs;public:angle()(2)(int h,int m,int s)hours=h;mins=m;secs=s;void sh

11、ow()couttime is: hours:mins:secsendl;(3) angle operator+(angle &p1,angle &p2)angle temp;temp.secs=(p1.secs+p2.secs)%60;temp.mins=(p1.secs+p2.secs)/60+p1.mins+p2.mins)%60;temp.hours=(p1.secs+p2.secs)/60+p1.mins+p2.mins)/60;(4) ;return temp;int main()angle a(12,2,53),b(15,2,54);a=a+b;a.show();return 0

12、;输入描述无输出描述略输入样例无输出样例time is: 3:5:47窗体顶端窗体底端3. (5分)虚函数实现多态性题目描述下面程序是虚函数实现多态性,请完成下列程序。#includeusing namespace std;(1) petpublic:(2)void speak()couthow does a pet speak?endl;class cat:public petpublic:virtual void speak()coutmiao!miao!endl;class dog:public petpublic:virtual (3) speak()coutwang!wang!end

13、l;int main()pet p;p.speak();cat c;c.speak();dog d;d.speak();return 0;输入描述无输出描述略输入样例无输出样例how does a pet speak?miao!miao!wang!wang!窗体顶端窗体底端4. (3分)继承-虚函数题目描述在下面程序的横线处填上适当的内容,使程序执行后的输出结果为9SS9S。#includeusing namespace std;class A(1) a;public:A():a(9)(2) void print() constcouta;class B:public Achar b;publi

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号