-1
vector<int> function(vector<int>& input) {
// do something with input then return it
input.push_back(3);
return input;
}
和
vector<int>& function(vector<int>& input) {
// do something with input then return it
input.push_back(3);
return input;
}
任何区别什么关系呢?当您分配功能到一个新的变量回归以来,矢量被复制反正:
vector<int>result = function(some_vector);
是的,它会被复制,但是如果你不想拷贝vector,比如'function(input).function ...' – songyuanyao