我在一个 c++ 应用程序上担任 Mac 编码员,我与使用 VS2008 的 PC 编码员共享。当他们对需要非包含头文件的源文件进行更改时,他们不会收到警告,因为他们的大部分头文件都在预编译头文件中。他们可以使用什么设置来警告他们未能添加所需的包含?
这会让我的生活更轻松,因为 GCC 要求包含实际存在。
最佳答案
呃……你提出的问题是基于一个不正确的前提。
需要包含 VS 编译器中的所有 header 。没有办法解决它。
预编译 header 功能不会以任何方式影响此一般原则。唯一的区别是,在计划使用预编译头文件的项目中,头文件通常是通过特殊的中间头文件间接包含的。尽管如此,您不能忘记包含一些头文件,无论项目是否使用预编译头文件。所有 header 必须在所有情况下直接或间接包含。
使用预编译头文件的项目可以在任何对任何预编译头文件一无所知的编译器上完美编译。
因此,您描述的情况在实践中根本不会发生。如果是这样,那么您一定遗漏了有关该问题的一些重要细节。
关于c++ - 如何强制 Visual Studio 2008 警告缺少头文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3963459/