在c++中,成员变量和成员函数是分开存储的。
只有非静态成员变量才属于类的对象上
class Person
{
};
void test01()
{
Person p;
cout<<"size of p= "<<sizeof(p)<<endl;
}
空对象占用内存空间为1
c++编译器会给每个空对象也分配一个字节空间,是为了区分空对象占内存的位置
每个空对象也有一个独一无二的内存地址
class Person
{
int m_A;//非静态成员变量 属于类的对象上
static int m_B;//静态成员变量 不属于类对象上
void func(){}//非静态成员函数 不属于类对象上
static void func(){}//静态成员函数 不属于类对象上
};
void test02()
{
Person p;
cout<<"size of p= "<<sizeof(p)<<endl;
}