#include <iostream>
using namespace std;
/************************************************************************
1.类的数据成员和成员函数是分开存储的;
2.空对象sizeof大小为1,因为编译器为每一个空对象分配一个字节大小空间,区分对象
在内存中的位置,每一个对象都应该有一个唯一的内存地址;
3.静态数据成员是所有对象共享的,所以不占用对象内存空间;
/************************************************************************/
class Person{
public:
int m_heigh; //数据成员占用对象空间,sizeof(per)为4,根据对齐规则进行计算
static int m_age; //静态数据成员,不占用对象空间
void get_value() //非静态成员函数,不占用对象空间
{
}
static void get_value1() //静态成员函数,不占用对象空间
{
}
};
int Person::m_age=0;
void test1()
{
Person per;
cout<<"sizeof(p):"<<sizeof(per)<<endl;
}
int main()
{
test1();
return 0;
}
C++ 类对象大小
最新推荐文章于 2022-05-22 15:36:24 发布