为啥当虚基类具有默认构造函数时,派生类不必为虚基类提供初始化式

为什么当虚基类具有默认构造函数时,派生类不必为虚基类提供初始化式?
本帖最后由 wsfxzxb 于 2013-01-20 18:21:05 编辑
不理解。即使它有默认构造函数,比如当 Panda 类同时继承多个基类时(如图),现在创建一个Panda 对象:

为啥当虚基类具有默认构造函数时,派生类不必为虚基类提供初始化式


class Bear   : virtual public ZooAnimal{...};
class Raccoon: virtual public ZooAnimal{...};
class Panda: public Bear,public Raccoon,public Endangered{...};


将导致 Bear 类和 Raccoon 类都试图初始化 Panda 对象的 ZooAnimal 类部分。这不乱了?

------解决方案--------------------
将导致 Bear 类和 Raccoon 类都试图初始化 Panda 对象的 ZooAnimal 类部分。这不乱了? 
那里乱了

都实现的是一样的内容
而且lz可以下端点  只调用一次zoomAnimal

mfc并不支持多继承 深究无用!