C++:设类X分别派生出类Y和类Z,类Y和类Z又共同派生出类W,请用虚基类方式定义这些类。要求为类添加一些简单的成员,并编写main()函数进行验证。
// An highlighted block
//#include<iostream>
//using namespace std;
//class X{
//private:
// int a;
//public:
// X(int x){a = x;}
//};
//
//class Y:virtual public X{
//private:
// int b;
//public:
// Y(int x,int y):X(x){b = y;}
//};
//
//class Z:virtual public X{
//private:
// int c;
//public:
// Z(int x, int z):X(x){c = z;}
//};
//
//class W:public Y,public Z{
//private:
// int d;
//public:
// W(int x,int y,int z,int w):Y(x,y),Z(x,z),X(x){d = w;}
//};
//
//int main(){
// return 0;
//}
//class X{
//public:
// int m_a;
//};
//class Y:virtual public X{
//public:
// int m_b;
//};
//class Z:virtual public X{
//public:
// int m_c;
//};
//class W:public Y,public Z{
//public:
// void setA(int a){m_a = a;}
// void setB(int b){m_b = b;}
// void setC(int c){m_c = c;}
//};
//int main(){
// W data;
// data.setA(1);
// data.setB(2);
// data.setC(3);
// cout<<data.m_a<<data.m_b<<data.m_c<<endl;
//}