我正在编写代码来查找两个向量的总和:
// Vector operations
TIntV& FindSum(const TIntV& v1, const TIntV& v2) {
AssertR(v1.Len() == v2.Len(), TStr::Fmt("Vector lengths unequal"));
TIntV vSum = TIntV(v1);
for (int i = 0; i < vSum.Len(); i++) {
vSum[i] += v2[i];
}
return vSum;
}
我需要返回总和,但我要返回零向量,因为 vSum 似乎超出了范围。
utilities.cpp:6: warning: reference to local variable ‘vSum’ returned
在不超出范围的情况下返回变量的最佳方法是什么?另外,为什么我们可以返回整数、浮点数等而不用担心这个?