编译器对预编译头的内存分配限制

来源:互联网 发布:php高并发面试题 编辑:程序博客网 时间:2024/05/21 13:55

确定编译器对预编译头的内存分配限制。

复制
/Zmnumber
参数

number

比例因子,用于为预编译头确定编译器的内存分配限制。

备注

number 参数是默认值为 100 的比例因子,它指定内存分配为 50 MB。最大值为 2000。下表说明数字如何修改内存分配。

值内存分配

10

5.0 MB

100

50 MB

200

100 MB

1000

500 MB

2000

1000 MB

在早期的 Visual C++ 版本中,编译器使用了大量的离散堆,每个堆都有一定的限制。编译器现在可以根据需要使堆动态增大,只要求分配给预编译头的内存的大小固定不变。只有在极少数涉及非常大或非常复杂的程序的情况下,才会导致超出预编译头的堆大小限制。如果程序超过这些限制,请使用/Zm 调整所有限制的总大小。

大多数情况下,并不需要使用此编译器选项。如果编译程序时出现错误信息,并且该错误信息报告了 /Zm 应该具有的值,则使用此选项。

在 Visual Studio 开发环境中设置此编译器选项

  1. 打开此项目的“属性页”对话框。有关详细信息,请参见如何:打开项目属性页。

  2. 单击“C/C++”文件夹。

  3. 单击“命令行”属性页。

  4. 在“附加选项”框中键入编译器选项。

以编程方式设置此编译器选项