最赞回答 / pand0rao
不同继承方式的影响主要体现在:1、派生类成员对基类成员的访问控制。2、派生类对象对基类成员的访问控制。三种继承方式:1、公有继承(public)① 基类的public和protected成员的访问属性在派生类中保持不变,但基类的private成员不可访问。② 派生类中的成员函数可以直接访问基类中的public和protected成员,但不能访问基类的private成员。③ 通过派生类的对象只能访问基类的public成员。2、私有继承(private)① 基类的public和protected成员都以pri...
2019-08-22
最赞回答 / 莫渡
这是因为Worker和Children类中都有从person类继承的eat,ChildLabourer不知道自己调用的是哪个父类的eat函数。要解决这个问题,就要用到虚继承,就是把class Worker : public Person和class Children : public Person改成class Worker : virtual public Person和class Children : virtual public Person。具体你可以看这一章的课程。
2019-06-15
最赞回答 / qq_慕仔4162485
这种调用是在父类person和子类soldier中含有同名成员函数或者数据成员时用来区分的。如果直接写soldier.work()调用的是soldier中的work函数,而从父类继承来的work函数会被隐藏。若想调用父类继承来的work函数,在调用时要加上父类名Person
2019-02-15
最新回答 / 小仆仆
protected是保护,,和private有一点区别的 private可以封装函数访问,protected(可以被派生类访问,但不能直接访问,必须在外部函数或者其他的),,,具体你可以看前面讲类的分类这一节。
2019-01-29