Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class A
- {
- public:
- ~A() {}
- virtual int e() = 0;
- };
- class B : virtual public A
- {
- public:
- ~B() {}
- virtual int f() = 0;
- };
- class C : virtual public A
- {
- public:
- ~C();
- C(int a);
- protected:
- int _c;
- virtual int e();
- };
- class D : public C, virtual public B
- {
- public:
- ~D();
- D(int a);
- virtual int f();
- };
- C::C(int a)
- {
- _c = a;
- }
- C::~C()
- {
- }
- int C::e()
- {
- return _c;
- }
- D::D(int a):C(a)
- {
- }
- D::~D()
- {
- }
- int D::f()
- {
- return _c+1;
- }
- int main()
- {
- D* d = new D(1);
- delete d;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement