首先,让我们来引入话题
1. 多重继承
考虑以下情况,
base class中对象可能会被derived class重复复制,为解决此问题,C++引入virtual inheritance(虚继承)
图为虚继承后的iostream继承体系图。
// 此处并非是iostream库的标准实现,只是为了方便理解
class ios {...};
class istream : public virtual ios {...};
class ostream : public virtual ios {...};
class iostream : public istream,public istream {...};