53魔力发布网,提供最好最新的开机信息

查看完整版本: 什么是堆、栈?

妖哥 2008-4-8 20:22

什么是堆、栈?

程序需要的内存空间分为 heap(堆) 和 stack(栈);

heap 是自由存储区, stack 是自动存储区;

使用 heap 需要手动申请、手动释放, stack 是自动申请、自动释放;

使用 heap 时, 如果只申请不释放, 就会发生"内存泄露";

不需要申请和释放空间的元素, 譬如变量、结构(record)等, 是存与 stack(栈);

反之如需要 Create 和 Free 的对象、需要 GetMem 和 FreeMem 的指针等, 则是存于 heap(堆);

stack 比 heap 快一点点.
页: [1]
查看完整版本: 什么是堆、栈?
妖城魔力欢迎您