标签: c++ c++11
我正在使用一个非我写的c ++库。
某些头文件包含其他类,但仍然有类的“重复”空定义。这种行为的目的是什么?
#include "OtherClass.h" class OtherClass; class ThisClass { // definitions here };
答案 0 :(得分:2)
这是类的前向声明,它是一个没有完整标识符定义的声明。这有助于减少编译时间和循环依赖性。
在您的场景中,您只应包括或转发声明该类,但不能同时声明两者。