问题描述
- 下面这两种情况怎么输出这样的结果?
-
先继承Cengineer类的话,就输出Cengineer类的name和age。若改为先继承Cleader类的话,就输出Cleader类的name和age,这是什么道理?开发-下面这两种情况怎么输出这样的结果?-软件设计开发输出清单">文档">
解决方案
先继承,先构造,而cbase::访问的是先构造的对象。
解决方案二:
编译器对于多重继承,也就是有多个可以匹配的方法,优先匹配找到的第一个方法。
这么写是不可靠的,为此,你应该修饰为virtual的,避免菱形继承。
解决方案四:
你这就是多重继承,然后出现了菱形结构,结果就是看编译器实现,你不应该让它出现这种错误
时间: 2024-11-01 14:55:09