2014-11-06 125 views
2

我有一个预编译头文件,需要包含在我的项目中的每个.cpp上。我担心我会浪费大量时间在同事代码中进行解释和修复。预编译头文件和MSBuild

有没有一个MSBuild步骤,我可以做到#include "stdafx.h"在我的所有.cpp文件的顶部,因此它不需要手动完成?

+1

我很困惑 - 为什么你的项目的需求需要影响别人对他们的项目做什么? – dlf 2014-11-06 14:28:03

+0

@dlf呃,现在我重读“其他人的项目”是没有意义的。我已经改变它说“同事代码”。 – 2014-11-06 14:37:03

+0

@JonathanMee这确实更有意义。 :)但是如果我没有记错,如果你打开了预编译头文件,如果你忽略了在任何cpp中包含stdafx.h(除非该cpp专门具有禁用的预编译头文件),MSBuild会给你一个实际的编译时错误,希望!)难以忘记。但是要直接回答你的问题 - 我不知道有什么方法可以让编译器强行在每个cpp中包含一个特定的头文件,而不管它是否要求。 – dlf 2014-11-06 14:40:52

回答

4

你有编译器选项/FI路径

这无形中在该文件的第一行添加#include "pathname"

注意:gcc的等效值为-include path

+0

是的,我刚刚发现它感谢我刚刚发现/ FI选项感谢您的“gcc -include”评论和此页面:http://www.cmake.org/pipermail/cmake/2010-February/035208.html测试它然后我会接受。 – 2014-11-06 15:06:58