class B :virtual public A class C :virtual private A 结果会如何?
#include <iostream>
#include <string>
using namespace std;
class A {
public:
int x;
int y;
};
class B :virtual public A { int g;};
class C :virtual private A { };
class D : public B, public C{ };
int main()
{
cout << sizeof(A) << '\n' ;
cout << sizeof(B) << '\n' ;
cout << sizeof(C) << '\n' ;
cout << sizeof(D) << '\n' ;
return 0;
}
结果为8 16 12 20 我不明白的是对于类D来讲 x,y是怎么处理的