我想通过另一个类的指针从类 A 调用 Foo() 函数(我不能包含另一个类的标题,因为我在另一个类上这样做了,所以它会导致一个 ,,contains selfs' 错误)
//a.h
class X; // here I can't include "x.h", so forward declaration, but that results incomplete type
class A
{
X* ptr;
void Example()
{
X->Foo(); // it can't be use, casue ,,incomplete type is not allowed''
}
void Print();
}
//x.h
#include "a.h"
class X
{
A* ptrarray[];
void Foo();
void List()
{
for (i...)
ptrarray[i]->Print(); // ok, works fine
}
}
我该如何解决这个问题,你能给我任何建议吗?