头文件中存在重复的类声明
Duplicate class declaration in the header files
我正在使用一个不是我写的c++库。
有些头文件包括其他类,但仍然有类的"重复"空定义。这种行为的目的是什么?
#include "OtherClass.h"
class OtherClass;
class ThisClass {
// definitions here
};
这是类的前向声明,是一个没有完整标识符定义的声明。这有助于减少编译时间和循环依赖关系。
在您的场景中,您只应该包含或转发声明类,但不能同时包含和转发。
相关文章:
- .cpp和.h文件中的模板专用化声明
- 在 .h 文件中的类中声明静态变量和在.cpp文件中声明"global"变量有什么区别
- 用"=default"声明的函数应该只在头文件中执行
- 调用在 HXX 文件中声明的静态数据成员
- 如何在 c++ 的不同文件中声明类?
- 如何在头文件中声明类模板(由于循环依赖关系)
- 声明要在 qml 和 cpp 文件中使用的全局字符串
- 在.cpp文件之间传递结构声明,而不使用全局头文件
- 为什么要将函数声明和定义放在单独的文件中
- 枚举前向声明与头文件
- 在命名空间中声明变量,在 main 中定义它,使其对所有其他文件可见
- 在带有类型保护的模板文件中使用前向声明
- 在指向现有内存地址的 hpp 文件中声明成员函数的最佳方法
- 在多个头文件中从接口声明被覆盖的函数时,如何避免重复代码?
- 当我可以在头文件中声明和定义所有文件时,为什么要创建一个.cpp文件?
- 文件存在时的最新检查声明生成输入"is missing"
- 在实现文件中使用模板参数声明方法
- 包含文件中的 Typdef "未在此范围内声明"
- 带有正向声明的Co-Dependent.h文件
- 无法声明文件指针数组