我想让我的集合在我的类之外不可变。C++按值返回集合
从这个:
public:
vector<int>& getValues(){
return values;
}
private:
vector <int>& values;
这样:
public:
vector<int> getValues(){
return values;
}
private:
vector <int>& values;
将它正常工作?
你试过了吗?这很容易做... – Simone 2011-05-06 09:47:56
您确定要参考成员吗? – fredoverflow 2011-05-06 09:48:26
引用作为成员方法的使用不是*错误*,但它通常也不常见,并且它不能代替*“我想使我的集合**在我的类**之外是不可变的** “*。那里的参考意味着该集合不是由班级拥有*。我的第一个猜测是,你不想存储一个引用,但没有更多的代码或更完整的描述,我只是将注释留给你去思考。 – 2011-05-06 10:03:07