2 u011632296 u011632296 于 2014.10.19 14:51 提问

程序员面试宝典上关于sizeof的一个题

第4版,p59,例8

#include<iostream>
using namespace std;
class Base
{
public:
Base(){cout<<"..."<<endl}
~Base(){}
virtual void f(int){}
virtual void f(double){}
virtual void g(int i=10){}
...
    }
class Derived:public Base
{
...
}
int main ()
{
Base b;
Derived d;
Base *pb=new Derived;
cout <<sizeof(Base)<<endl;
cout <<sizeof(Derived)<<endl;
return 0;
}

为什么输出是4 4?

1个回答

oyljerry
oyljerry   Ds   Rxr 2015.01.01 22:16

虚函数表指针,4个字节

Csdn user default icon
上传中...
上传图片
插入图片