c++ - 如何找出哪些包含的文件不是当前 VC++ 解决方案的一部分

标签 c++ visual-c++

除其他事项外,我认为 Visual C++ 解决方案旨在包含给定产品的所有源代码文件。然而,由于“附加包含目录”和内置的 C++ 包含绝对和相对路径的能力——可以包含不属于解决方案的文件(从标准 C++ header 开始)。

这可能是无意的,也可能是故意的。但是,为了控制依赖关系并很好地了解哪些文件是产品的源代码以及哪些文件是内置的 Visual Studio 文件,如果有一种方法可以判断哪些包含不属于当前解决方案。

看这个例子:

  1. C:/Dev/Projects/Project-A/Project-A.vcproj
  2. C:/Dev/Projects/Project-A/Project-B.vcproj
  3. C:/Dev/Projects/Project-A/Project-C.vcproj
  4. C:/Dev/Projects/Project-A/Project-D.vcproj

如果我创建一个解决方案,它只包含 Project-AProject-B,没有什么可以阻止 Project-A包含来自 Project-CProject-D 的文件。这意味着如果我想分发这个解决方案,我可能会忽略 Project-C 和 Project-D。

我们能否让 VC++ 对未明确包含在解决方案中的源代码文件发出警告——当然,在标准 C++ 头文件之外?或者至少提供最终包含在最终库/可执行文件中的完整文件列表?

提前致谢!

最佳答案

您可以使用 /showIncludes 显示所有包含的文件-开关。

除此之外,我不认为有一种自动方法可以防止包含某些文件。你只需要注意它。

关于c++ - 如何找出哪些包含的文件不是当前 VC++ 解决方案的一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6173032/

相关文章:

c++ - 无法启动 pty 进程 :

c++ - 如果传递 long 类型,32 位客户端如何与 64 位服务器通信?

C++ 和汇编代码 (NASM) 相互调用

c++ - 如果我可以旋转我的角色,我该如何使用网格贴图进行碰撞检测?

c++ - c++中struct的恼人问题

c++ - 重载指针对象

c++ - 更好的方法来做到这一点?

C++,在函数内部从一对中删除一个元素

c++ - C++ 中的 new[]/delete[] 和抛出构造函数/析构函数

c++ - 在 Visual C++ 中执行此操作的更好方法是什么?