8 c++ class declaration definition forward-declaration
我知道这些问题似乎含糊不清,但我想不出任何其他方式来表达它,但是,是否有可能做到这样的事情:
#include<iostream>
class wsx;
class wsx
{
public:
wsx();
}
wsx::wsx()
{
std::cout<<"WSX";
}
Run Code Online (Sandbox Code Playgroud)
?
Joh*_*itb 19
是的,这是可能的.以下只是声明wsx
class wsx;
Run Code Online (Sandbox Code Playgroud)
这种声明称为前向声明,因为当两个类相互引用时需要它:
class A;
class B { A * a; };
class A { B * b; };
Run Code Online (Sandbox Code Playgroud)
其中一个需要向前宣布.