以下のコードでは仮想継承を使用しているため、派生クラスのサイズは24バイトを示していますが、それがどのようになっているのかわかりません。正確に教えてください。
#include "stdafx.h"
#include <iostream>
using namespace std;
class BaseClass
{
private : int a, b;
public :
BaseClass()
{
a = 10;
b = 20;
}
virtual int area()
{
return 0;
}
};
class DerivedClass1 : virtual public BaseClass
{
int x;
public:
virtual void simple()
{
cout << "inside simple" << endl;
}
};
int main()
{
DerivedClass1 Obj;
cout << sizeof(Obj) << endl;
return 0;
}