测试环境 windows xp SP3,vc60
1.空类占字节数
class Father
{
};
int main(){
cout<<sizeof(Father)<<endl;
return 0;
}
输出:1
分析:空类之所以要占一个字节,应该是为了能够定义该类的不同对象(具体如何操作现在还不太明白)。
2.有一个成员变量的类占字节数
class Father
{
private:
int a;
};
int main(){
cout<<sizeof(Father)<<endl;
return 0;
}
输出:4
分析: 因为在32位机器上int类型占4个字节。
3.有一个普通成员函数
class Father
{
public:
char * TFunc();
};
char * Father::TFunc()
{
return "Father";
}
int main(){
cout<<sizeof(Father)<<endl;
return 0;
}

本文在Windows XP SP3环境下,使用VC6.0进行测试,探讨了C++中不同情况下的类所占内存字节数。从空类到包含成员变量、普通成员函数及虚函数的类,分析了字节占用的变化,并提及了虚函数表在其中的作用。
最低0.47元/天 解锁文章
6951

被折叠的 条评论
为什么被折叠?



