class A{
public :
int _a1;
int _b;
void virtual f(){};
};
class B:virtual public A{
public:
int _b;
~B(){}; //line1
void virtual f(){}; //line2
void virtual f2(){};
void virtual f3(){};
void virtual f4(){};
};
int main(){
printf("A: %d\n", sizeof(A));
printf("B: %d\n", sizeof(B));
return 0;
}
代码如上,为什么line1和line2同一时候被凝视。一个凝视一个不凝视输出结果都是12,24。可是假设都不被凝视,输出的结果是28?
哪位大牛指点一下。