关于类,对象和成员的内存分布
介绍
c++ 程序的内存格局分为4个区,全局数据区,代码区,栈区,堆区,全局数据区存放全局变量,静态数据和常量。所有类成员函数和非成员函数代码存在代码区,为运行函数分配的局部变量,函数参数,返回数据,返回地址等存放在栈区,余下的空间都被称为堆区。
对象是类的实例
c++ 程序的内存格局分为4个区,全局数据区,代码区,栈区,堆区,全局数据区存放全局变量,静态数据和常量。所有类成员函数和非成员函数代码存在代码区,为运行函数分配的局部变量,函数参数,返回数据,返回地址等存放在栈区,余下的空间都被称为堆区。
对象的存储大小
- 如果有虚函数,则多一个vptr指针
- 如果有虚基