【发布时间】:2017-05-15 11:28:44
【问题描述】:
我有一个跨平台项目,我想在 Windows 上使用预编译头文件(在这种情况下它非常重要),而在 Linux 上我不想要它。所以我想要这样的东西:
#ifdef _WIN32
#include "precompiled.h"
#endif //#ifdef WIN32
当我在 Windows 上构建时,我收到了这个烦人的错误,声称:
PCH warning: header stop cannot be in a macro or #if block. An intellisense pch was not generated
有什么办法可以解决这个问题吗?
提前致谢。
【问题讨论】:
-
不确定,但似乎是警告,而不是错误
-
为什么要在 Windows 上(它“非常重要”)而不是在 Linux 上?很奇怪。
-
这个故事有点长,但问题是我真的需要这个预编译的头文件包含在 Windows 构建中,而不是在 Linux 中使用。
-
只需将#ifdef 移到.h 文件中。
标签: c++ visual-studio precompile