需要包含预编译 header 两次

Need to include the precompile header twice

我的应用程序运行正常,但我正在尝试清理一些东西。当我在源文件中包含预编译 header 时,会发生以下情况。

基本上第一行有下划线,好像它有问题,所以我必须在下面再次包含它,路径正确...但我 需要否则它不会编译。

有什么想法吗?

Visual Studio仅在名称匹配时使用预编译的header(名称不是case-sensitive)。比方说,在您的项目中设置了预编译 header 名称 StdAfx.h,因此只有当代码包含 #include "stdafx.h" 时才会使用预编译 header。

#include "..\stdafx.h" 未被识别为预编译的 header,即使它是真实位置。

您需要在项目设置中添加指向 stdafx.h 位置的包含路径,然后 header #include "stdafx.h" 才能正常工作。

预编译 header 的另一个常见问题是 include 指令在 header 中。它应该始终在源文件 (.ccp) 中。