Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- class A {
- protected:
- int x;
- public:
- A(int a):x(a){}
- };
- class B: virtual public A {
- protected:
- int x;
- public:
- B(int a, int b):A(a),b(x){}
- };
- class C: virtual public A {
- protected:
- int x;
- public:
- C(int a, int c):A(a),c(x){}
- };
- class D: public B,C {
- protected:
- int x;
- public:
- D(int a, int b, int c,int d):A(a),B(b),C(c),d(x){}
- };
- class E: public D {
- protected:
- int x;
- public:
- E(int a, int b, int c, int d, int e):D(a,b,c,d),e(x){}
- friend ostream&operator<<(ostream& os, const E&obj){
- os << obj.A::x << " " << obj.B::x
- << " " <<obj.C::x << " " << obj.D::x << " " << x << " ";
- return os;
- };
- int main(){
- E a(1,2,3,4,5);
- cout << a << endl;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement