#include <iostream>
using namespace std;
class A
{
public:
A()
{
cout << "A Class" << endl;
}
};
class B :virtual public A
{
public:
B()
{
cout << "B Class" << endl;
}
};
class C : virtual public A
{
public:
C()
{
};
class D : public B,public C
{
public:
D()
{
cout << "D Class" << endl;
}
};
A Class
B Class
C Class
D Class
using namespace std;
class A
{
public:
A()
{
cout << "A Class" << endl;
}
};
class B :virtual public A
{
public:
B()
{
cout << "B Class" << endl;
}
};
class C : virtual public A
{
public:
C()
{
cout << "C Class" << endl;
}};
class D : public B,public C
{
public:
D()
{
cout << "D Class" << endl;
}
};
int main()
{
D d;
return 0;
}
Output
A Class
B Class
C Class
D Class