gpt4 book ai didi

c++ - 解决 C、C++ 中隐式包含的想法

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:12:05 25 4
gpt4 key购买 nike

我刚刚想出了一个解决问题的想法并想分享它。对不起,如果太平庸。

因此,我正在审查的一个大型 C++ 项目包含许多依赖于其他包含的符号但不包含所需包含的包含。构建过程中的任何细微变化都会导致“缺少符号”失败。

因此,为了立即检查所有包含的自包含,我搜索所有 *.h,即时创建一个 cpp 文件,其中仅包含带有此 .h 文件的 #include -statement 并尝试编译它.最后,我获得了“好”和“坏”包含文件的列表。很酷是不是 :-)或者有更简单的解决方案吗?

最佳答案

如果每个 .cpp 文件首先包含它自己的头文件,然后是其他头文件,您将在不使用外部工具的情况下获得此检查。

这实际上是Googles C++ Style Guide的一部分出于同样的原因:

The preferred ordering reduces hidden dependencies. We want every header file to be compilable on its own. The easiest way to achieve this is to make sure that every one of them is the first .h file #included in some .cc.

如果您有任何头文件没有相应的 .cpp 文件,您必须为它们做一些特殊的事情。

关于c++ - 解决 C、C++ 中隐式包含的想法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4224490/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com