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

最赞回答 / 任e逍遥
可以啊,多个虚函数都是放在一个虚函数表中的。所以就算有很多虚函数,也只有一个虚函数表指针。

最新回答 / qq_淡淡的_6
sum在类中的定义static int sum应该把static去掉,static是静态存储关键字,加了static,sum相当于成为了一个全局变量,没有把类实例化之前,就已经分配好内存给sum了,而每一个的实例对sum进行操作,都是对同一个变量进行操作,所以sum是两个实例的x,y,z相加的和,刚好是54。

最新回答 / 慕粉3348155
这么说吧,我也遇到过这种问题,自己用编译器检验过,能通过,但网上通过不了。相信自己的,我隔一天提交,就通过了,还有我经常遇到,明明是错的也能通过。所以,我是看看评论,看看别人的代码,最后自己实验,能行的就不要在意通不通过了,希望对你有帮助

最新回答 / 何方神圣
你说的输入时会出现一个下滑表格的提示么?如果是的话,举个例子,比如有一个成员叫 m_iAge,当你输入 m_ 的时候这个成员也就出现了,然后上下键选中该对象,回车,就可以了

最新回答 / 一碗清粥
shape类中的输出字符你打错了,是cout,不是dout!

最新回答 / 一阵风雷
老师已经说了,delete时只执行了基类的析构函数,而没有执行子类的析构函数,也就是说,因为没用虚析构函数,所以造成了问题,老师已经说明了。

最赞回答 / 萝卜白菜西瓜
如果你定义的是Gun p,那么需要使用&取地址,也就是hunting(&p)。但是如果你定义的是Gun &p = new Gun(),那么gun本来就是代表的地址,所以直接使用即hunting(p),根据题目知道最后需要释放内存,所以肯定是在堆上定义的,所以应该使用Gun &p = new Gun()这种形式。

最赞回答 / 慕UI8711183
1、虚函数表不是只存储虚函数的地址吗? 怎莫理解您说的 “类对象的头部即虚函数表所在” 这句话。虚函数表存放的是虚函数的地址,虚函数表指针存放的是虚函数表的首地址,在内存中,子类对象Circle头部(即前四个字节)存放的是虚函数表指针,父类指针p指向子类Circle,也就是说把子类Circle的首地址赋值给p,根据p就可以找到子类Circle的虚函数表指针,依次找到虚函数表,再找到虚函数。2、没有虚函数,就没有虚函数表,子类对象Circle头部(即前四个字节)就没有虚函数表指针,就没法调用子类对象Circ...

最新回答 / Sacrt
是不是要初始化啊,FighterPlane里面好像没有m_strCode的数据成员,在Plane才有。改成“FighterPlane(string code):Plane(code)”试试

最赞回答 / XZMYSTYLE
如果用new的话,下面的catch语句传入的参数要用*代替&,同时catch里面的调用函数的语法也要用->来实现
课程须知
本课程是C++初级课程 1、熟练掌握C++语言基础语法
老师告诉你能学到什么?
1、虚函数、虚析构函数、纯虚函数 2、抽象类和接口类 3、运行时类别异常 4、异常处理

微信扫码,参与3人拼团

微信客服

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

帮助反馈 APP下载

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

公众号

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

友情提示:

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消