.cpp文件需要“Multiple Include Guard”吗?

时间:2015-09-21 08:24:47

标签: c++ c-preprocessor

我的项目中有file1.h和file1.cpp。我在file1.h中有多个包含Guard,以避免同一文件的多个包含。我在file1.cpp文件中包含了file1.h文件。我运行第三方工具(parasoft)来查找与项目有关的任何问题,它已经确定file1.cpp文件中缺少Multiple Include Guard。我的问题是在file1.cpp文件中需要多个包含保护?如果不需要,为什么我在文件* .cpp文件中出错?请帮帮我......

2 个答案:

答案 0 :(得分:5)

此消息的常见原因是#include "file1.cpp"。也就是说,您不小心包含了.cpp文件而不是实际的标题。

您正确使用的工具认为如果包含file1.cpp,则应防止多次包含。该工具并不奇怪是否应该首先包含file1.cpp

答案 1 :(得分:1)

您使用的工具已损坏,或者您没有正确使用它。 你不需要在cpp文件中包含任何包含守卫,因为通常你不会在任何地方包含cpp文件。