我想知道std::
(从c++11
开始)有一个函数来计算
和更新操作(或'滚动窗口总和')。因为我不是
确定通常如何调用该操作(这可能是预防的
我在std::
中找到它,下面的小代码的最后一行做了什么
我想要(并称滚动窗口总和......)
const int n=101, m=n/2;
float a3[n];
float aD[m-1];
std::fill_n(array,m-1,0.0f);
for(i=0;i<n;i++)
a3[i]=rand();
for(i=0;i<m;i++)
aD[0]+=a3[i];
for(i=1;i<(m-1);i++)
aD[i]=aD[i-1]+a3[i+m-1]-a3[i-1]; //'here: sum update of a3
答案 0 :(得分:2)
标准库不提供此类功能。你需要自己实现它。
答案 1 :(得分:1)
不确定这是否会对您有所帮助,但Boost.Accumulators有rolling_sum。