【发布时间】:2020-11-03 06:39:08
【问题描述】:
假设我有一个范围,我想计算每个元素的立方和,例如对于[1,2,3]我要:
13 + 23 + 33 = 36
我将如何使用std::accummulate() 来执行此操作,我必须在其中编写自己的二进制函数?我有:
std::accummulate(iterator to beginning,
iterator to end of range,
0.0,
[](int i, int j) { return i*i*i + j*j*j; });
但这由于某种原因不起作用。
这个问题很奇怪,但在我返回时,我只是将 i 和 j 与它们自己相乘 3 次并相加。
【问题讨论】: