关于类的sizeof问题

有如下例子:

#include <iostream>
using namespace std;
class A
{
public:
 virtual int getLen();
 virtual char getCount();
private:
 int m_Len;
 char m_Count;
 static int m_Width;
};
void main()
{
 cout<<sizeof(A)<<endl;
}

结果为12。

分析:sizeof()计算栈中分配的数据大小,而静态变量放在全局数据区,虚函数无论多少个,32位系统只占4个字节,然后为了照顾数据对齐,有4+4+4=12.

你可能感兴趣的:(静态变量,虚函数,sizeof)