fatal error C1076编译器堆内存有关问题
fatal error C1076编译器堆内存问题?
在编译一文件的时候出现以下错误:
fatal error C1076: compiler limit : internal heap limit reached; use /Zm to specify a higher limit
我查了下以往的帖子说
在project-settings-C/C++下面Project Options里输入/Zm2000或者小一点的数就可以了
但我照着改了下 又出现
fatal error C1063:
Error executing cl.exe.
不知道是什么情况,望前辈们指点指点 谢谢
------解决方案--------------------
/Zmnumber 为预编译头确定编译器的内存分配限制。number 是比例因子,其默认值为 100,指定分配 50MB 内存。number 的最大值为 2000。下表说明 number 如何修改内存分配:
number 内存分配
10 5.0 MB
100 50 MB
200 100 MB
1000 500 MB
2000 1000 MB
在早期的 Visual C++ 版本中,编译器使用了大量的离散堆,每个堆都有一定的限制。编译器现在可以根据需要使堆动态增大,只要求分配给预编译头的内存的大小固定不变。只有在极少数涉及非常大或非常复杂的程序的情况下,才会导致超出预编译头的堆大小限制。如果程序超过这些限制,请使用 /Zm 缩放所有限制的总大小。
在编译一文件的时候出现以下错误:
fatal error C1076: compiler limit : internal heap limit reached; use /Zm to specify a higher limit
我查了下以往的帖子说
在project-settings-C/C++下面Project Options里输入/Zm2000或者小一点的数就可以了
但我照着改了下 又出现
fatal error C1063:
Error executing cl.exe.
不知道是什么情况,望前辈们指点指点 谢谢
------解决方案--------------------
/Zmnumber 为预编译头确定编译器的内存分配限制。number 是比例因子,其默认值为 100,指定分配 50MB 内存。number 的最大值为 2000。下表说明 number 如何修改内存分配:
number 内存分配
10 5.0 MB
100 50 MB
200 100 MB
1000 500 MB
2000 1000 MB
在早期的 Visual C++ 版本中,编译器使用了大量的离散堆,每个堆都有一定的限制。编译器现在可以根据需要使堆动态增大,只要求分配给预编译头的内存的大小固定不变。只有在极少数涉及非常大或非常复杂的程序的情况下,才会导致超出预编译头的堆大小限制。如果程序超过这些限制,请使用 /Zm 缩放所有限制的总大小。