我有一个Visual Studio 2010解决方案,其中包含几个非常密切相关的项目。想脱离复制粘贴代码共享和共享项目之间的一些共同的类。我们尝试将项目A中的类的引用添加到项目B中,但是在共享类引用错误的stdafx.h文件的情况下正在收到编译错误。请注意,两个项目都预编译了标题(默认情况下)。在解决stdafx.h依赖关系时共享项目之间的类
我们还了解到它是使用预处理器定义的not possible to #ifdef the correct stdafx.h文件。
在这一点上,它看起来像我们的选择是要么建立一个静态库项目或多个项目,并参考来自项目A & B,或尝试一些预生成事件复制正确的stdafx.h文件到共享代码子文件夹。第三是重新构建这两个项目,根本不使用stdafx.h。
所有这些选项对我来说似乎有点矫枉过正。有没有更容易的解决方案,我错过了?
我认为,最好的选择是用公用代码创建一个静态库,正如您发现的那样... – Aconcagua
一种解决方案是在预编译头文件关闭的情况下编译。这完全摆脱了stdafx.h。 – user4581301
您是否尝试过创建新的过滤器并从该过滤器中的其他项目添加类。这可以帮助明确其他项目类的来源,并且可以将stdafx.h添加到该过滤器。 – amisam