从com聚合中 举一个 例子
发布时间:2020-12-13 19:46:14 所属栏目:百科 来源:网络整理
导读:class A { public: virtual void fun1() = 0; virtual void fun2() = 0; virtual void fun3() = 0; }; class B { public: virtual void funB1() = 0; virtual void funB2() = 0; virtual void funB3() = 0; }; class C : public A,public B { public: C() { m
class A
{ public: virtual void fun1() = 0; virtual void fun2() = 0; virtual void fun3() = 0; }; class B { public: virtual void funB1() = 0; virtual void funB2() = 0; virtual void funB3() = 0; }; class C : public A,public B { public: C() { m_pa = reinterpret_cast<A*>(static_cast<B*>(this)); } virtual void fun1() {m_pa->fun1();} virtual void fun2() {m_pa->fun2();} virtual void fun3() {m_pa->fun3();} virtual void funB1() {printf("funcb1n");} virtual void funB2() {printf("funcb2n");} virtual void funB3() {printf("funcb3n");} A* m_pa; }; int _tmain(int argc,_TCHAR* argv[]) { A* pa = new C(); pa->fun1(); delete pa; return 0;}
// funcb1. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |