摘要:
在只有虚函数,或者只有虚继承的情况下,各个编译器中对C++的内存模型的实现是一样的。但同时存在虚函数和虚继承时,GCC与VC就会有差别。class Base//4{ int a;};class Base1 :public Base//8{ int a;};class Base2 : public Base//8{ int a;};class Base3//4{ virtual void funa(){}};//两个虚继承分别使用两个指针指向自己的虚基类,然后两个基类有2个int//应为使用了共同的虚基类,base的int只有一个,因此2*4+4+4+4=20//有多个虚... 阅读全文