好的,所以我会尽力解释我的问题。基本上在我的一个头文件中我需要使用一个类,显然要做到这一点我必须在当前的头文件中包含该类的头文件。我只是在想,既然我打算稍后创建此类的新实例,我是否也应该将它包含在 .cpp 文件中以帮助提高可读性?我知道我不必这样做,但这样做有意义吗?还是我只是疯了?
例子A,头文件:
include "APIManager.h"
class Environment
{
public:
static void Initialize();
private:
APIManager apiManager;
};
例子A,源文件:
include "Environment.h"
// Should I include "APIManager.h" here too?
void Environment::Initialize()
{
}
试着在这里四处寻找它,但我不确定如何表达它,如果有人问过这个问题,我们深表歉意。
此外,一般来说,您应该在类的头文件中包含类源代码所需的头文件吗?谢谢。
最佳答案
如果源文件是 Environment.cpp,您在其中实现您在 Environment.h 中声明的内容,那么不,您不应该重新包含它。
另一方面,如果源文件是 SomeOtherFile.cpp,您只是在其中使用 Environment.h 中的声明,并且您将单独使用 APIManager.h 中的声明,并且独立于它们作为 Environment 的一部分的用法.h,那么是的,你应该。您不希望将来的更改删除 #include <Environment.h>
从 SomeOtherFile.cpp 意外破坏它。
换句话说,如果 SomeOtherFile.cpp 直接依赖于 APIManager.h,那么这种依赖应该直接通过 #include 表达。
关于c++ - 如果我需要在我的 header 中包含另一个 header 并且我计划在我的 CPP 文件中使用它,我是否也应该将它包含在那里以提高可读性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38620063/