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

已采纳回答 / gdjy098
在这里,是不是B是A的子类啊?如果B是A的子类,前提:class B:public AB b;A a = b;//用子类B的对象初始化父类A的对象A a1;a1 = b;//用子类B的对象赋值给父类A的对象A*p = &b;//用父类A的指针指向子类B的对象bA&a2 = b;//用子类B的对象初始化父类A的引用      子类创建时候是先调用基类的构造函数,然后再调用子类的构造函数。你用子类的构造函数是完全可以实例化基类的。给你个网址,它讲的比较清楚https://zhidao.baid...

最赞回答 / 慕沐5120513
C++可以做游戏开发,嵌入式开发,服务器开发,桌面软件开发等;想入门的话可以先考虑看看慕客上的C++视频,看完后对C++的理解会更深刻,然后再往更深层里研究。

最赞回答 / 慕粉4092444
没有。。。。。Person::soldier.attack()就变成Person这个类里面的soldier.attack()函数了,逻辑上就不对了!

最新回答 / 小仆仆
尽量在类外定义,因为这样方便自己阅读

已采纳回答 / qq_静静流_0
soldier.attack()士兵调用自己的方法,attack()是士兵的方法自己私有的懂吗?可以实例化对象直接调用!我没知道士兵继承了person,因为是公有继承所以士兵也有了人类的吃饭的方法!你可能以后为什么?以为士兵公有继承了人,那么人的方法和属性都会继承来!因为士兵也是一个人,明白吗?所以他也可以eat(),因为士兵并没有重写继承来的eat(),所以可以直接调用person的eat()方法!知道为什么吗?因为士兵继承person后他就有了eat()方法,只是没有写出来!这也是为什么有继承,因为可...

最赞回答 / 大妮妮1051134
因为migrantworker可以从farmer  和 worker继承,而farmer和worker都是从person继承的,这样migrantworker就含有两个person中的数据,这是不被允许的,所以采用虚继承避免冗余数据。  migrantworker只是包含farmer一次,不存在冗余,所以不需要虚继承

最新回答 / NoBB_
因为它让你用指针(要求:在main函数中通过new实例化ChildLabourer类的对象)

最新回答 / qq_赦_0
应该是你程序其他的地方出错了,这两者都一样,只是一个需要程序员释放内存,一个系统自动释放!请采纳

已采纳回答 / 岸芷汀兰0u7
protected的特性是在类中不能直接访问,但是可以间接访问到。比如:在public中的一个函数sum中调用了protected中的变量m_ia,m_ib。即内部能够访问,但不能直接访问。公有继承到子类中依然是protected下,同样是不能直接访问m_ia,m_ib,但是可以间接访问。
课程须知
本课程是C++初级课程 熟练掌握C++语言基础语法,如需要学习C++基础语法的可以看《C++远征之起航篇》、《C++远征之离港篇》、《C++远征之封装篇(上)》、《C++远征之封装篇(下)》
老师告诉你能学到什么?
1、什么是继承 2、基类和派生类的概念 3、继承的三种方式 4、多重继承和多继承 5、虚继承是怎么回事

微信扫码,参与3人拼团

微信客服

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

帮助反馈 APP下载

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

公众号

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

友情提示:

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消