假设我有一个类 Foo ,它的引用变量类型为 Bar 和一个构造函数,如下所示:
富.h:
class Foo {
public:
Bar& m_b;
Foo(Bar& b);
}
Foo.cpp
Foo::Foo(Bar& b) : m_b(b) {
}
在一个单独的课程中,我有:
// global
Bar b;
Foo f(b);
int main() {
b.setData(); // actually set some values...
f.m_b.showData(); // will it show the change?
return 0;
}
调用 setData() 后 f 中的引用变量是否也会发生数据变化?我正在尝试这种解决方法,因为我有一个具有引用变量的类(必须在初始化期间设置),但我需要它可以全局访问(在实际设置 Bar 中的数据之前声明)。