双递归结构

Cod*_*ith 2 c++ recursion struct

我对如何创建两个相互引用的结构感到困惑。我找不到任何像以前问过的问题。
所以,我知道这会编译得很好:

    struct MyStruct {
        MyStruct* p;
    };
Run Code Online (Sandbox Code Playgroud)

但是,例如,

    struct A {
        B* pBstruct;
    };
    struct B {
        A* pAstruct;
    };
Run Code Online (Sandbox Code Playgroud)

这不会编译。

Dan*_*her 5

您需要一个前向声明来使类型已知:

struct B;
struct A {
    B* pBstruct;
};
struct B {
    A* pAstruct;
};
Run Code Online (Sandbox Code Playgroud)