【发布时间】:2016-11-07 17:39:59
【问题描述】:
我正在尝试学习如何使用 Lamba 函数,并想做类似的事情:
给定一个向量 = {1,2,3,4,5}
我想要成对和的总和 = (1+2)+(2+3)+...
以下是我的尝试,但无法正常工作。
#include <vector>
#include <algorithm>
using namespace std;
vector <double> data = {1,10,100};
double mean = accumulate(data.begin(),data.end(),0.0);
double foo()
{
auto bar = accumulate(data.begin(),data.end(),0.0,[&](int k, int l){return (k+l);});
return bar
}
我尝试将 return 语句更改为 return (data.at(k)+data.at(l)),但效果不佳。
【问题讨论】:
标签: c++ lambda accumulate