class A
{
int a;
};

class B : public A
{
int b;
};

class C : public A
{
int c;
};

class D : virtual B,virtual C
{
int d;
};

int _tmain(int argc, _TCHAR* argv[])
{
int nSize = sizeof(D);
return 0;
}

 

结果nSize = 24,比较奇怪。

如果为class D : public B,public C却 nSize = 20

posted on 2016-08-16 20:53  RedLight  阅读(131)  评论(0编辑  收藏  举报