65,184
社区成员




class a {};
class b{};
class c:public a{
virtual void fun()=0;
};
class d:public b,public c{};
//SIZE 8
//class d:public b{};
//SIZE 1
//class d:public c{};
//SIZE 4
class E:public a,public b
{
//SIZE 1
};
class F
{
int i;
};
class G:public a,public F
{
//SIZE 4
};
class H
{
virtual void fun();
};
class I:public a,public H
{
//SIZE 4
};
int main()
{
cout<<"sizeof(a)"<<sizeof(a)<<endl;
cout<<"sizeof(b)"<<sizeof(b)<<endl;
cout<<"sizeof(c)"<<sizeof(c)<<endl;
cout<<"sizeof(d)"<<sizeof(d)<<endl;
cout<<"sizeof(e)"<<sizeof(E)<<endl;
cout<<"sizeof(G)"<<sizeof(G)<<endl;
cout<<"sizeof(H)"<<sizeof(H)<<endl;
cout<<"sizeof(I)"<<sizeof(I)<<endl;
return 0;
}
//就算你对sizeof(classA),sizeof(classB)烂熟于胸、胸有成竹、胸大无脑、(.Y.)、(.)(.)……
//你还是不敢
if (sizeof(classB)==sizeof(classA)) memcpy(&classB,&classA,sizeof(classA));