考虑以下用于添加 a 的所有元素的代码vector
:
#include<iostream>
#include<algorithm>
#include<numeric>
#include<vector>
using namespace std;
int main(void)
{
std::vector<double> V;
V.push_back(1.2);
V.push_back(3.6);
V.push_back(5.6);
double sum = accumulate(V.begin(),V.end(),0);
cout << "The sum of the elements of the vector V is " << sum << endl;
return 0;
}
当我在 Windows 上的 Cygwin 上编译并运行它时,我在终端上得到输出为
向量 V 的元素之和为 9
该accumulate
函数似乎将所有数字四舍五入并将它们相加,这可以解释答案。
这是 Cygwin g++ 编译器的问题,还是我对添加 a of s 的accumulate
函数的误解?vector
double