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

最新回答 / 慕粉2248089209
不是跳转了么,shape(),rect()

最新回答 / qq_库尔喀察_fmEV25
首先Shap中area()函数是纯虚构函数;其次float Shape:area() 这样的话返回值应该是一个float类型的;没返回值应该是void Shape:area() 

最新回答 / Eanve
就是为了防止错误的操作而改变其值

最新回答 / weixin_慕雪0498266
抽象类包含接口类,区别在于接口类只含有纯虚函数、无其他成员函数、构造函数、析构函数、数据成员;而抽象类在含有纯虚函数以外,可以含有成员函数、数据成员、构造函数、析构函数。

最赞回答 / 大叶_
Coordinate 要放在前面定义,这样shape才能调用定义Coordinate的构造函数要写成Coordinate::Coordinate(int _x, int _y)你的class Coordinate打错了

最新回答 / qq_raining
因为指针在定义的时候就指向了circle的对象,所以指针一直是指向circle对象内存区域的,因而delete的时候会找到circle对象的虚函数表,进行析构。然后父类shape再进行析构。

最新回答 / qq_消遣_3
通过父类指针去指向子类对象,是为了帮助我们理解虚函数和虚析构函数的概念。

最新回答 / 普通人love
“吃葡萄不吐葡萄皮,不吃葡萄倒吐葡萄皮”

最新回答 / qq_枕梦听风忆倾城_0
<...图片...>这个地方可以配置生成的平台,x64下地址是8个字节的,x86是4个字节的

最赞回答 / 慕田峪0215096
dynamic_cast用于判断类型转换是否安全,如果不安全则返回NULL

最新回答 / 低调_低调
这个要细心看看代码哦,代码中使用的是父类去实例化子类,所以调用的是子类的构造函数,并且只传了一个参数给子类的构造函数,所以当实例化父类的时候是没有参数的,则会调用到默认构造函数。

最赞回答 / 岁月长衣裳薄
因为已经包含了Circle.h和Rect.h,而这两个文件里又都包含了Shape.h注意:因为不能两次包含Shape.h,所以用了#ifndef

最新回答 / 慕虎8274556
throw和catch后面需要接数据类型,并且throw的类型需要和catch数据类型对应。string ()是<string>库中的一个函数,它实现了创建一句字符串的功能。

最新回答 / KingCoder
 Bus *bus = new Bus;    Tank *t = new Tank;    doSomething(b);    doSomething(t);    return 0;
课程须知
本课程是C++初级课程 1、熟练掌握C++语言基础语法
老师告诉你能学到什么?
1、虚函数、虚析构函数、纯虚函数 2、抽象类和接口类 3、运行时类别异常 4、异常处理

微信扫码,参与3人拼团

微信客服

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

帮助反馈 APP下载

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

公众号

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

友情提示:

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消