全局设置编译器标志(/Zm 内存限制)

the*_*ine 6 visual-c++-6 visual-studio-2008 visual-studio

在编译一些复杂的模板时,我有时会得到:

致命错误 C1076:编译器限制:达到内部堆限制;使用 /Zm 指定更高的限制

我知道我可以去项目设置并指定例如/Zm500给编译器更多的内存(更多信息/Zm可以在这里找到)。然而,它非常麻烦,我更喜欢全局设置默认限制。有什么办法吗?

或者,是否有任何方法可以使用源文件的编译指示或其他注释来指定此特定标志?这样,它也可以在具有潜在不同设置的机器之间实现便携。

我使用的是 Visual Studio 2008,如果它也适用于 Visual C++ 6.0,我不会介意。

the*_*ine 7

我终于在这里找到了答案。所需要的只是设置CL环境变量:

CL=/Zm500

例如在控制面板 - 系统 - 环境变量中(注意需要重新启动 IDE)。然后所有构建都将使用此设置,除非被cl.exe命令行参数覆盖。

这适用于 MSVC 6.0 和 Visual Studio 2008。