今天在堆和栈的问题上纠结了一阵子,在这里整理一下堆和栈的区别。
1.堆是存储动态内存分配的,而栈是存储在函数中定义的局部变量。
2.堆中对象生命周期较长,栈中生命对象较短。
3.堆中对象内存一般由程序员手动分配,要记得回收,否则容易发生内存泄漏,而栈中对象由操作系统自动分配释放。
4.堆是从低地址向高地址生长,而栈从高地址向低地址生长。
内存空间:堆和栈的区别
最新推荐文章于 2023-03-22 00:27:18 发布
今天在堆和栈的问题上纠结了一阵子,在这里整理一下堆和栈的区别。
1.堆是存储动态内存分配的,而栈是存储在函数中定义的局部变量。
2.堆中对象生命周期较长,栈中生命对象较短。
3.堆中对象内存一般由程序员手动分配,要记得回收,否则容易发生内存泄漏,而栈中对象由操作系统自动分配释放。
4.堆是从低地址向高地址生长,而栈从高地址向低地址生长。