成员变量和成员函数分开存储
#include <bits/stdc++.h>
using namespace std;
class Person{
};
void test01(){
Person p;
//c++编译器会给每个空对象也分配一个字节空间,是为了区分空对象占内存的位置
//每个空对象也应该有一个独一无二的内存地址
cout<<sizeof(p)<<endl;//1
}
int main() {
test01();
return 0;
}
#include <bits/stdc++.h>
using namespace std;
class Person{
int m_A;//非静态成员变量 属于类的对象上的
static int m_B; //静态成员变量 不属于类的对象上
void func(){} //非静态成员函数 不属于类的对象上
static void fuc2(){} //静态成员函数 不属于类的对象上
};
int Person::m_B=0;
void test01(){
Person p;
//c++编译器会给每个空对象也分配一个字节空间,是为了区分空对象占内存的位置
//每个空对象也应该有一个独一无二的内存地址
cout<<sizeof(p)<<endl;//4
}
int main() {
test01();
return 0;
}