很抱歉,问题标题不会令人困惑,但我不确定如何更好地说出来。
基本上,这是我的代码。
标题文件
class Foo {
public:
Foo();
private:
Bar * b;
}
class Bar {
public:
Bar(Foo *f);
private:
Foo * foo;
}
cpp文件
Foo::Foo() {
new Bar(this);
}
Bar::Bar(Foo * f) {
foo = f;
}
我试图将值相互传递,但Bar并未向Foo声明。如何让Foo知道Bar?
答案 0 :(得分:3)
class Bar; // <-- Forward declaration.
class Foo {
public:
Foo();
private:
Bar * b;
}