首页  编辑  

堆和栈

Tags: /超级猛料/Language.Object Pascal/指针、内存相关/   Date Created:

在win32和win16中,堆(heap)是指可供分配的内存,进程中可动态分配。

在传统的C中堆和栈实际是一块物理内存,堆主要用来动态分配内存,从堆栈内存的低端向上分配;而栈主要用来传递函数参数、返回值和局部参数内存分配,是从堆栈内存的高端向下分配,俗称压栈和出栈。

一般的子程序的入参及局部变量都放在栈中的,子程序结束后,栈中的局部变量将消失;

对象.Create及New申请的动态空间都是在堆中分配的,在堆中分配的空间不能自动释放,

必须用语句显式地释放