C++每个类都依赖于第二个类

mat*_*iit 0 c++

假设我有两个类:

class One {
    Two *somevar = new Two;
    // (...)
};

class Two {
    One *somevar = new One;
    // (...)
}
Run Code Online (Sandbox Code Playgroud)

并且编译类似的东西是不可能的.怎么处理?

bta*_*bta 9

由于您所有的嵌套都是指针,请尝试:

class Two;

class One {
    Two *somevar = new Two;
    // (...)
};

class Two {
    One *somevar = new One;
    // (...)
}
Run Code Online (Sandbox Code Playgroud)

通过前向声明类Two,您可以为编译器提供足够的信息,以便能够在类中创建指针One.如果你试图自己嵌套类而不仅仅是指针,那么就没有办法解决这个问题.