本文共 714 字,大约阅读时间需要 2 分钟。
点上方蓝字开发小鸽获取更多干货
在右上方 ··· 设为星标 ★,与你不见不散
老规矩–妹妹镇楼:
在C++的类中,虽然将成员变量与成员函数风筝在了一起,但是他们是分开存储的。
C++的非静态成员变量是属于类对象的,占类对象的空间
成员函数却不属于类对象,不占类对象的存储空间
非静态成员变量,属于类对象,占用类对象空间
非静态成员函数 不属于类对象,不占用类对象空间
静态成员函数,静态成员变量都不属于类对象,都是单独的空间存储
空类的大小为1个字节,因为每个实例的类对象,都有唯一的地址,每个类对象中有一个char 类型来维护这个地址。
通过查看类的字节大小来验证
#define _CRT_SECURE_NO_WARNINGS #include using namespace std; class Person { public: int a; //非静态成员变量,属于类对象 void func( ) { }; //非静态成员函数 不属于类对象 static int b; //静态成员变量 ,不属于类对象 static void func2(){ }; //静态成员函数 ,不属于类对象 }; void test() { cout << sizeof(Person) << endl; } int main(){ test(); return 0; }
关注公众号【开发小鸽】,获取实战开发与深度学习资源,实战项目源码,最新论文下载,大厂面试经验!!!
转载地址:http://txdnv.baihongyu.com/