预编译头和MSBuild

3
我有一个预编译头文件,需要在我的项目中每个.cpp文件的顶部包含它。我担心我将浪费很多时间来解释和修复同事的代码。
是否有一种MSBuild步骤可以在所有的.cpp文件顶部自动包含 #include "stdafx.h",以避免手动完成?

1
我很困惑——为什么你们项目中的pch要求需要影响其他人处理他们项目的方式? - dlf
@dlf 哎呀,现在我重新阅读那句话,“其他人的项目”没有意义。我已经改成“同事的代码”。 - Jonathan Mee
@JonathanMee 那确实更有意义。:) 但是如果我记得正确,如果您打开了预编译头文件,MSBuild会在任何cpp中忽略#include stdafx.h时给出实际的构建时错误(除非该cpp明确禁用了预编译头文件),这(希望!)使它难以忘记。但是直接回答您的问题-我不知道是否有任何方法可以强制编译器在每个cpp中强制包含特定的头文件,无论它是否要求。 - dlf
@Jarod42 /Yu 是我用来指示我正在使用预编译头文件的开关,但是我需要在所有的 .cpp 文件顶部添加 #include "stdafx.h"。我想要删除在所有 .cpp 文件顶部添加 #include "stdafx.h" 的需求;也就是说,我想以编程方式实现这一点。 - Jonathan Mee
1个回答

5
你有一个编译器选项,/FI 文件路径名,它可以在文件的第一行几乎添加#include "文件路径名"
注意:在gcc中,相当于-include路径

是的,我刚找到了。谢谢你的“gcc -include”评论和这个页面让我发现了/FI选项: http://www.cmake.org/pipermail/cmake/2010-February/035208.html 。我会测试一下,然后再接受。 - Jonathan Mee

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接