如何计算C++中双精度矢量的累加和?
我有一个双打的矢量,我需要创建另一个数组,它是第一个元素的累积和。例如;如何计算C++中双精度矢量的累加和?
vector<double> Array(10,1);
vector<double> Sum(10);
Sum[0] = Array[0];
for(unsigned int i=1; i<Array.size(); i++)
Sum[i] = Sum[i-1] + Array[i];
是否有一个内置函数将执行上述累计和?
无需测试它,像
std::partial_sum(Array.begin(), Array.end(), Sum.begin(), plus<double>());
应该做的伎俩,如果是C++。 (实际上,plus<double>()
可以默认出厂,it seems。)
如果你想明确地传递二进制操作,它必须是'std :: plus
谢谢,我一直误会!现在,那是加上
#include
您使用哪种语言? – Oded 2010-07-20 09:03:27
@Oded:这很可能是包含std名称空间的C++。任何确认Wawel? – Akusete 2010-07-20 09:04:05
@Akusete - 可能,但可以是任何支持''''通用语法并具有类似于C的结构(Java,C#,C++ ...)的语言 – Oded 2010-07-20 09:05:01