文章分类 -  Other

摘要:#include <iostream>class A { virtual void a()=0; virtual void b()=0;};class A1 : public A { virtual void a(){ std::cout<< "A1::a()" << std::endl; } virtual void b(){ std::cout<< "A1::b()" << std::endl; } };class A2 : public A { virtual void a(){ std: 阅读全文
posted @ 2012-06-28 16:48 lawmoios 阅读(264) 评论(0) 推荐(0)
摘要:1.为什么需要虚继承如下图所示如果访问Der::Fun or Der::m_nValue就会带来二义性,无法确定是调用Base1的还是Base2的,所以为了解决多重继承情况下成员访问的二义性,引入了虚继承机制。一般继承 虚继承 2.虚继承实现在虚继承下,Der通过共享虚基类SuperBase来避免二义性,在Base1,Base2中分别保存虚基类指针,Der继承Base1,Base2,包含Base1, Base2的虚基类指针,并指向同一块内存区,这样Der便可以间接存取虚基类的成员,如下图所示:3.不同编译... 阅读全文
posted @ 2012-06-28 16:23 lawmoios 阅读(61) 评论(0) 推荐(0)
摘要:http://www.blogjava.net/diggbag/articles/361703.html 阅读全文
posted @ 2012-05-18 15:26 lawmoios 阅读(50) 评论(0) 推荐(0)
摘要:http://www.blogjava.net/diggbag/articles/361703.html 阅读全文
posted @ 2012-05-18 15:13 lawmoios 阅读(51) 评论(0) 推荐(0)