虚拟继承的疑惑


class A
{
int a;
};class

class B : public A
{
int b;
};gc

class C : public A
{
int c;
};vi

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

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

 

结果nSize = 24,比较奇怪。

若是为class D : public B,public C却 nSize = 20

相关文章
相关标签/搜索