首页 > 解决方案 > 如何修复无法将虚拟内存编译到 PCH?

问题描述

这几天这张照片真的让我很痛苦。

我自己创建了一个非常小的库。只有 400 kb 并用作库函数。

创建新项目并引用它以及使用头文件。但编译后我得到这个错误:

在此处输入图像描述

如何解决这个问题?这对我不起作用:

在此处输入图像描述

标签: c++visual-studiovisual-c++precompiled-headers

解决方案


根据文档;<a href="https://docs.microsoft.com/en-us/cpp/error-messages/compiler-errors-2/compiler-error-c3859?view=msvc-160" rel= "nofollow noreferrer">编译器错误 C3859

从 Visual Studio 2015 开始,/Zm 建议仅在使用 #pragma hdrstop 指令时才有意义。在其他情况下,这是一个虚假错误,表明 Windows 虚拟内存压力问题。

如果您的预编译头文件使用 #pragma hdrstop 指令,请使用 /Zm 编译器标志为预编译头文件指定更大的值。否则,请考虑减少构建中并行编译过程的数量。

您能否告诉我们您使用的是哪个版本的 Visual Studio?如果您遇到 PCH 文件错误,您可以做的最好的事情之一就是迁移到更新的 Visual C++ 编译器。我们修复了 VS 2015 和 VS 2017 中的许多 PCH 内存压力错误。

有关更多详细信息,我建议您可以参考链接:https ://devblogs.microsoft.com/cppblog/precompiled-header-pch-issues-and-recommendations/


推荐阅读