原地址:http://blog.csdn.net/great3779/article/details/7022064
今天编译一个项目时,出现如下编译错误:
1>d:\program files (x86)\microsoft visual studio 9.0\vc\include\vector(203) : error C3859: virtual memory range for PCH exceeded; please recompile with a command line option of '-Zm110' or greater
1>d:\program files (x86)\microsoft visual studio 9.0\vc\include\vector(203) : fatal error C1076: compiler limit : internal heap limit reached; use /Zm to specify a higher limit
从字面上翻译即:
错误C3859: PCH虚拟内存范围越界;请使用命令行选项'-Zm110'或更大重编译。
致命错误C1076: 编译受限:内部堆栈达到上限;使用/Zm指定更高限额。
对以上错误,我个人理解是PCH(Precompiled Headers, 预编译头文件stdafx.h)包含的文件过多,导致预编译内存不够。
解决办法很简单,工程上点击右键 -> 属性(Properties) -> C/C++ -> 命令行(Command Line), 在额外选项(Additional options)中按错误提示输入-Zm110 (或更大数字)重编译即可。