以下是一段遍历std::vector<int>容器并计算所有元素之和的C++代码,该代码存在边界访问错误和可优化的地方:
#include <vector>
int calcSum(const std::vector<int>& vec) {
int sum = 0;
for (int i = 0; i <= vec.size(); ++i) {
sum += vec[i];
}
return sum;
}
针对上述代码,下列修正方案中正确的是: