摘要: 在C++中,什么叫做钻石问题(也可以叫菱形继承问题),怎么避免它?下面的图表可以用来解释钻石问题。假设我们有类B和类C,它们都继承了相同的类A。另外我们还有类D,类D通过多重继承机制继承了类B和类C。因为上述图表的形状类似于钻石(或者菱形),因此这个问题被形象地称为钻石问题(菱形继承问题)。现在,我... 阅读全文
posted @ 2014-10-06 20:33 zzyoucan 阅读(1046) 评论(0) 推荐(0) 编辑
摘要: 虚继承(个人感觉用到的地方不多,项目中没有用到这个的)最典型的例子就是iostream的继承方式class istream : virtual public ios{...};//此处就是虚继承,指定ios为虚基类class ostream : virtual public ios{...};cla... 阅读全文
posted @ 2014-10-06 20:32 zzyoucan 阅读(199) 评论(0) 推荐(0) 编辑
摘要: /*对于此类的模型为:class object{ float _x;//类的nonstatic成员函数 _vptr_Point;//指向虚函数表的指针}virtual table//虚函数表的信息(应该存放的是一些指针)slot1---type info for Point(用于支持RT... 阅读全文
posted @ 2014-10-06 09:38 zzyoucan 阅读(184) 评论(0) 推荐(0) 编辑