在C++中可以只对类进行声明,而不对其进行定义,例如
class MyClass;
该声明会向程序引入名字MyClass并且指明MyClass是一种类类型。这种对类的声明叫做前向声明。
1 使用前向声明
1.1 声明指针或引用
在声明了类之后,可以定义指向这种类的指针或引用。
MyClass* pmc;
MyClass& rmc = *pmc;
此时,只是说明pmc是一个指针,该指针指向了MyClass,可以不必关心MyClass具体的结构,引用变量rmc的情况也是一样的。
1.2 函数参数与返回值
函数的参数和返回值也可以使用前向声明。
MyClass* myFunc(MyClass* pmc)
{
return pmc;
}