c++类的继承和派生 (c++类的继承与派生思维导图)

详解c++中多层继承和多重继承,c++类的继承与派生思维导图

详解c++中多层继承和多重继承,c++类的继承与派生思维导图

然后我们再去看c++中的构造和析构函数的执行的顺序.

.

详解c++中多层继承和多重继承,c++类的继承与派生思维导图

详解c++中多层继承和多重继承,c++类的继承与派生思维导图

直接用案例说明,可以看到,上面呢,我们写个Base类,然后

写这个类的构造方法.

详解c++中多层继承和多重继承,c++类的继承与派生思维导图

详解c++中多层继承和多重继承,c++类的继承与派生思维导图

然后我们在Base类中写上构造方法,和析构方法.

详解c++中多层继承和多重继承,c++类的继承与派生思维导图

详解c++中多层继承和多重继承,c++类的继承与派生思维导图

然后我们再去创建一个Son子类,可以看到,也写上构造和析构方法.

详解c++中多层继承和多重继承,c++类的继承与派生思维导图

详解c++中多层继承和多重继承,c++类的继承与派生思维导图

然后再去写一个test01方法

然后在main方法中调用这个test01方法.

详解c++中多层继承和多重继承,c++类的继承与派生思维导图

详解c++中多层继承和多重继承,c++类的继承与派生思维导图

然后执行看结果.可以看到当我们只去创建Base类的对象的时候,先走他的构造方法,再走析构方法,

这个是正常的对吧.

详解c++中多层继承和多重继承,c++类的继承与派生思维导图

详解c++中多层继承和多重继承,c++类的继承与派生思维导图

但是如果我们去创建子类的对象呢.?

详解c++中多层继承和多重继承,c++类的继承与派生思维导图

详解c++中多层继承和多重继承,c++类的继承与派生思维导图

我们执行看看,可以看到他先走了父类的构造方法,然后走了子类的构造方法,然后

走了子类的析构方法,再走了父类的析构方法.

详解c++中多层继承和多重继承,c++类的继承与派生思维导图

详解c++中多层继承和多重继承,c++类的继承与派生思维导图

所以我们就可以总结上面的内容了.

详解c++中多层继承和多重继承,c++类的继承与派生思维导图

详解c++中多层继承和多重继承,c++类的继承与派生思维导图