4.5 空闲存储空间(free-store)和堆栈空间(stack space)

2013-10-07 15:02:37 · 作者: · 浏览: 78

4.5  空闲存储空间(free-store)和堆栈空间(stack space)

从概念上讲,一个可执行的C++(www.cppentry.com)程序的内存分为下面3部分:

静态存储空间(static storage)存放程序的文本和静态数据。

在调用operator new函数、malloc函数和其他一些系统特有的函数时,从内存中分配的存储空间叫做空闲存储空间;而且,空闻存储空间的大小是会随着程序执行的过程不断发生变化的。

最后,堆栈空间是指存储自动变量和函数参数的内存;栈存储空间的大小也是会随着程序执行的过程不断发生变化的。

在4.3节我们讨论了减少程序代码大小的多种方法,其中也包括减少程序静态存储空间的方法。在下面这一节里,我们将着重考虑减少空闲存储空间和堆栈空间的方法。