在Header中向前声明,在CPP中包含
Forward Declare in Header and Include in CPP?
我已经开始在header中转发声明了。但是,大多数情况下,我只是将#include延迟到相应的cpp文件。
这篇文章让我相信我应该这样做。然而,在实践中,我从未见过其他人的代码中有如此大量的前向声明,并在cpp文件中包含相应的include。
我想知道,如果我误解或过度应用此规则,并在此过程中使我的项目可读性较差。
尽可能使用前向声明是一个好主意,因为它将加快编译时间。大多数人不使用它,因为他们通常不知道,或者他们懒惰,或者他们无知。但是在大型项目中,这将大大增加编译时间。我看不出有什么理由会降低代码的可读性。
看这个问题C/c++前向声明vs. Include
此外,应该使用前向声明而不是包含在任何可能的地方?
相关文章:
- 无法在UE4中包含BP类到CPP类
- 包含在.cpp文件中包含在 .h 文件时包含
- 如果 x.h 仅由函数声明组成,为什么有必要在 x 中包含 x.h.cpp
- 链接列表在 cpp 中包含不同的对象类
- 在头文件上包含 cpp 文件是否有缺点?
- 如果标头包含在另一个标头中,但不包含 CPP,则静态断言
- 即使我们有.h文件,C 何时包含CPP
- 使用"生成"包含.cpp文件
- main中的标头包含.cpp有效,但在类中抛出错误
- 在目标 c 项目中包含 cpp 类的逻辑
- 多次包含 CPP 文件
- 在 Visual Studio 中包含 *.cpp 文件的整个文件夹
- 包含.cpp文件而不是 .h 文件以使原版 gcc 能够进一步优化我的代码是个好主意
- 头文件中包含.cpp重新定义错误-实现通用堆栈
- 如何检测.h文件中是否包含.cpp文件中未定义的函数
- 在测试项目中包含.cpp文件的更好方法
- 在main中包含cpp文件时的编译错误:内联函数与非内联函数
- 在模板类的头文件中包含.cpp文件
- 如何在c程序中包含cpp头文件
- 能够包含cpp..但不是页眉?发生了什么事