Visual Studio Express:致命错误c1060,编译器没有堆空间

Sag*_*usA 7 compiler-errors visual-studio visual-c++ visual-studio-2012

我正在尝试使用VC 11从其源代码构建程序,当编译器完成时,它会引发标题中的错误.正如我在这里和其他论坛中所读到的那样,我一直试图关闭尽可能多的程序并扩大Windows中交换文件的大小......它们不起作用.

我读过一个名为\ Zm的参数,但我不明白如何使用它.

你能帮我么?

use*_*469 5

查看此文档,该文档提供了可能的解决方案

我也遇到了这个问题,并发现文档很有用。要点:

  1. 如果编译器还发出错误C1076和C3859,请使用/ Zm编译器选项降低内存分配限制。如果减少剩余的内存分配,则更多的堆空间可用于您的应用程序。

    如果已经设置了/ Zm选项,请尝试将其删除。由于该选项中指定的内存分配限制太高,可能会耗尽堆空间。如果删除/ Zm选项,则编译器将使用默认限制。

  2. 如果要在64位平台上进行编译,请使用64位编译器工具集。有关信息,请参见如何:在命令行上启用64位Visual C ++工具集。

  3. 在32位Windows上,尝试使用/ 3GB boot.ini开关。

  4. 增加Windows交换文件的大小。

  5. 关闭其他正在运行的程序。

  6. 消除不必要的包含文件。

  7. 例如,通过动态分配内存而不是声明一个大数组来消除不必要的全局变量。

  8. 消除未使用的声明。

  9. 将当前文件拆分为较小的文件。

  • 对我来说,使用 64 位编译器工具集是最好的选择。 (2认同)