C++类占用内存空间
空类会占用1字节的内存空间,原因是C++要求每个实例在内存中都有独一无二的地址。
(一)类内部的成员变量:
普通的变量:要占用内存的,要注意对齐原则(这点和struct类型很相似)。
static修饰的静态变量:不占用内存,原因是编译器将其放在全局变量区。
(二)类内部的成员函数:
普通函数:不占用内存。
虚函数:占用4个字节,用来指定虚函数表的入口地址。所以一个类的虚函数所占用的地址是不变的,和虚函数的个数没有关系。空类会占用1字节的内存空间,原因是C++要求每个实例在内存中都有独一无二的地址。
(一)类内部的成员变量:
普通的变量:要占用内存的,要注意对齐原则(这点和struct类型很相似)。
static修饰的静态变量:不占用内存,原因是编译器将其放在全局变量区。
(二)类内部的成员函数:
普通函数:不占用内存。
虚函数:占用4个字节,用来指定虚函数表的入口地址。所以一个类的虚函数所占用的地址是不变的,和虚函数的个数没有关系。相关推荐