我有这些功能:
vector<int> foo1() {
vector<int> v;
return v;
}
void foo2( vector<int>& parameter ) {
// Do something
}
void foo3( vector<int> par ) {
foo2( par );
}
...
foo2(foo1()); // Doesn't work (1)
foo3(foo1()); // Works (2)
有没有办法保持函数 foo2 原样,因为它是将向量作为参数传递的最佳方式,并且可能重载它以使(1)工作?还是有更好的方法来做到这一点?