Wit*_*eso 2 c++ reference class include
自从我完成C++以来已经很长时间了,我遇到了相互引用类的麻烦.
现在我有类似的东西:
啊
class a
{
public:
a();
bool skeletonfunc(b temp);
};
Run Code Online (Sandbox Code Playgroud)
BH
class b
{
public:
b();
bool skeletonfunc(a temp);
};
Run Code Online (Sandbox Code Playgroud)
由于每个人都需要引用另一个,我发现我不能在顶部做彼此的#include,或者我最后在包含的奇怪的循环中.
那么,如何让这个a可以使用b并且没有发生周期性的#include问题反之亦然?
谢谢!
你必须使用前瞻声明:
啊
class b;
class a
{
public:
a();
bool skeletonfunc(b temp);
}
Run Code Online (Sandbox Code Playgroud)
但是,在许多情况下,这可能会强制您使用方法调用或成员变量中的引用或指针,因为您不能在两个类头中都有完整类型.如果必须知道类型的大小,则需要使用引用或指针.但是,如果只需要方法声明,则可以使用该类型.