为了账号安全,请及时绑定邮箱和手机立即绑定

最赞回答 / Julia1yang
class Bus :public Movable 打错了、、、

已采纳回答 / onemoo
不加virtual,这个函数就不是虚函数,也就不会被子类继承。在子类中重新定义这函数,只能算是子类又定义了一个同名的函数,不会有多态的特性。即通过父类只能访问到父类的版本。

已采纳回答 / onemoo
哦,Flyable这是个纯虚的基类,这种类是不能实例化的,只能通过此种类型的指针来访问派生类。在调用函数时,函数的参数会被构造出来,所以参数也不能直接声明为这种类型,声明成指针就没问题。

已采纳回答 / 流浪_老
是的 圆心类使用才有意义

已采纳回答 / 流浪_老
求教什么 你想强制转换?

已采纳回答 / onemoo
从C++语言的角度来说,这就是虚函数的功能,你只需记住即可。如果你深究原因,这和语言的实现有关,大部分平台和编译器都是借助“虚函数表”来实现的,你搜搜这个东西就能明白。 不过你也要知道:C++并没有强制要求用虚函数表来实现多态,C++标准只是规定了行为,并没有规定具体实现方式。

已采纳回答 / eksea
可以,析构函数定义成虚析构函数没啥副作用,建议定义析构函数时都加上virtual

已采纳回答 / onemoo
这是构造函数的“构造初始化列表”。可以把需要在构造时初始化的成员变量写在这里,括号中是它们的初值,有多个变量就用逗号隔开。也可以写上父类的构造函数,这样可以在构造时按照你提供的参数将父类构造出来。上面这些会在本构造函数执行前构造完成。你这里应该就是父类的构造函数,Plane(code),括号中code就是调用参数。

已采纳回答 / onemoo
C++语言中并不鼓励使用宏,即便在C中也不鼓励这样做。在你觉得需要宏定义的时候就用宏呗。
课程须知
本课程是C++初级课程 1、熟练掌握C++语言基础语法
老师告诉你能学到什么?
1、虚函数、虚析构函数、纯虚函数 2、抽象类和接口类 3、运行时类别异常 4、异常处理

微信扫码,参与3人拼团

微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消