应该归还的东西
What should be returned?
本文关键字:归还 更新时间:2023-10-16
我是编程新手,所以我不知道如何准确地描述遇到的问题。
下面是函数 的声明 vector<int>& operator>>(vector<int>& v, int& x){
}
我只是想知道这个函数应该返回什么。如果这与我的问题相关,我正试图实现向量类的操作符>>。
Thanks for the help
在这种情况下,您可能正在尝试连锁操作:vec >> int1 >> int2;
。这意味着您应该返回第一个参数,以便它可以在下一次调用中使用。
vector<int>& operator>>(vector<int>& v, int& x){
x = v.back();
v.pop_back();
return v;
}
vector<int>
应该返回。如果你返回vector<int>&
,那么你不能返回一个新的向量,否则当函数结束时,它将在超出作用域时被销毁,并且引用将无效。如果您返回输入的向量v
,那么您将需要修改它,这是不明智的。