黑马程序员技术交流社区

标题: 堆和栈的区别 [打印本页]

作者: 一叶一花    时间: 2014-2-15 15:53
标题: 堆和栈的区别
本帖最后由 一叶一花 于 2014-2-15 22:12 编辑

堆和栈的区别?
作者: 许庭洲    时间: 2014-2-15 18:06
1. 堆是程序运行期间动态分配好的内存空间,可以根据程序的运行情况确定要分配的堆内存的大小;
2. 栈是程序编译期间分配好的内存空间,因此写的代码中必须就栈的大小有明确的定义;局部值类型变量,值类型参数等都在栈内存中。
作者: 一点红    时间: 2014-2-15 21:48
栈是用来存放值类型的数据,例如 int,bool等。
堆主要用来存放引用类型的数据,例如对象,就是在堆中开辟空间,而对象的引用则是存放在栈中,用来指向堆的地址





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2