我正在尝试编写一段代码,其中我通过类的构造函数通过引用传递向量并更新类的成员函数中的向量。但是当我回到主函数时,向量中没有更新:
// 头文件
class A{
private:
std::vector<T> &x;
public:
A(std::vector<T>& x_):x(x_) {}
int func();
};
// cp文件
int A::func() {
// process done
T temp;
x.push_back(temp);
}
// 主功能
int main() {
std::vector<T> vec;
A a(vec);
a.func();
}
我尝试将向量更改为类中的指针而不是引用,但函数运行后向量不会更新。关于在程序中改变什么有什么建议吗?