【发布时间】:2011-10-08 06:02:03
【问题描述】:
我有std::vector<int>,我想计算该向量中所有值的总和。
是否有任何内置函数或者我需要编写自定义代码?
【问题讨论】:
标签: c++
我有std::vector<int>,我想计算该向量中所有值的总和。
是否有任何内置函数或者我需要编写自定义代码?
【问题讨论】:
标签: c++
您需要制作自己的自定义代码。
int sum = 0; for (int i = 0; i < myvector.size(); i++) sum += myvectory[i];
答案在变量“sum”中。
【讨论】:
在numeric 标头中使用STL 算法std::accumulate。
#include <numeric>
// ...
std::vector<int> v;
// ...
int sum = std::accumulate(v.begin(), v.end(), 0);
【讨论】:
std::accumulate 的重要警告
accumulate(v.begin(), v.end(), 0);
查看here了解更多详情。
【讨论】: