/HEAP
设置堆的大小(以字节为单位)。 此选项仅适用于可执行文件。
语法
]$
注解
reserve
参数指定虚拟内存中的初始堆分配总量。 /HEAP
链接器或 EDITBIN 选项将指定值向上舍入到最接近 4 字节倍数的值。 默认情况下,堆大小为 1 MB。
可选的 commit
参数由操作系统解释。 在 Windows 操作系统上,它指定要分配的初始物理内存量。 它还指定要在展开堆时分配的内存量。 提交的虚拟内存会导致在页面文件中保留空间。 当应用需要更多堆空间但又会增加内存需求和可能的应用启动持续时间时,提高 commit
值可减少系统分配的内存。 commit
值必须小于或等于 reserve
值。 默认值为 4 KB。
以十进制、C 语言十六进制或八进制表示形式指定 reserve
和 commit
值。 例如,值 1 MB 可指定为十进制的 1048576、十六进制的 0x100000 或八进制的 04000000。 默认值等效于选项 /HEAP:1048576,4096
。
示例
此示例链接命令创建一个可执行文件 main.exe,该可执行文件的堆保留大小为 2 MB。 初始堆和更大堆扩展以 64 KB 的块为单位:
link /heap:0x200000,0x10000 main.obj
在 Visual Studio 中设置此链接器选项
打开项目“属性页” 对话框。 有关详细信息,请参阅在 Visual Studio 中设置 C++ 编译器和生成属性。
选择“配置属性”>“链接器”>“系统”属性页面 。
设置“堆保留大小”和“堆提交大小”属性,然后选择“确定”或“应用”保存更改。