测试
class TestDemo
{
public:
void func()
{
}
static void sFunc2()
{
}
static int a;
int b;
}
int TestDemo::a = 10;
void test()
{
TestDemo obj;
cout<< sizeof(obj) <<endl;
}
结论
- 类内部的
静态成员
,非静态成员函数
都不在类对象内部,不占用类对象大小 - 类对象的大小由非静态成员变量决定(类内部的非静态成员变量占用对象大小)
- 空类的大小占一个字节
- 类内部的函数,只要不是内联函数,在内存中只有一份
- 函数存放在内存四区的代码区
- 静态成员变量存放在全局静态区