第五章 课后习题

这篇博客通过两个程序实例展示了如何利用面向对象编程中的虚函数来实现球体、圆柱体、正方形、三角形和圆的面积计算。第一个程序涉及Circle类作为基类,派生出Sphere和Column类,计算球体的体积和表面积,以及圆柱体的体积和表面积。第二个程序中,定义了square、triangle和Circle类,分别计算正方形、三角形和圆的面积,并求得总面积。
摘要由CSDN通过智能技术生成
一、填空题
(1)C++的两种联编方式为:  静态  联编和  动态  联编。
(2)C++支持两种多态性,静态联编所支持的多态性被称为  编译时的多态性  、动态联编所支持的多态性被称为  运行时的多态性  。
(3)重载函数在编译时表现出多态性,就是  静态   联编;而虚函数则在运行时表现出多态性是  动态  联编。
(4)为了区分重载函数,把一个派生类中重定义基类的虚函数称为  覆盖   。
(5)如果派生类与基类的虚函数仅仅返回类型不同,其余相同,则C++认为是  使用不恰当的虚函数  。
(6)在构造函数和析构函数中调用虚函数时,采用  静态  联编。
(7)纯虚函数的定义是在虚函数定义的基础上,再让函数等于  0  。
(8)对于包含有纯虚函数的类被称为  抽象类  。

二、选择题(至少选一个,可以多选)

(1)用关键字( A )标记的函数被称为虚函数。
A. virtual                   B. private                    C. public                 D. protected
(2)在C++中,要实现动态联编,必须使用( D )调用虚函数。
A. 类名                      B. 派生类指针               C. 对象名                 D. 基类指针
(3)下列函数中,可以作为虚函数的是( BD )。
A. 普通函数                B. 非静态成员函数        C. 构造函数             D. 析构函数
(4)在派生类中,重载一个虚函数时,要求函数名、参数的个数、参数的类型、参数的顺序和函数的返回值( B )。
A. 不同                       B. 相同                         C. 相容                    D. 部分相同
(5)使用虚函数保证了在通过一个基类类型的指针(含引用)调用一个虚函数时,C++系统对该调用进行( A ),但是,在通过一个对象访问一个虚函数时,使用( B )。
A. 动态联编                B. 静态联编                   C. 动态编译              D. 静态编译
(6)下面函数原型声明中,(  B  )声明的func()为纯虚函数。
A. void func()=0;                                            B. virtual void func()=0;
C. vitual void func();                                       D. virtual v
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值