C++ 函数:accumulate()
作者:
牛奶小柒Luke
,
2021-05-19 19:49:49
,
所有人可见
,
阅读 501
该算法函数在numeric头文件中定义:#include<numeric>
目前知道的有几个功能:1.求和;2.求连乘; 3.string合并
求和时,accumulate带有三个形参:累加的元素起始地址;累加的元素结束地址,累加的初值(通常为0)。例如:
sum= accumulate(list, list+10, 0) ;得出sum=55.
如果sum= accumulate(list, list+3, 0) ;得出sum=6.
如果sum= accumulate(list, list+3, 100) ;得出sum=106.
求连乘积时,accumulate带有四个形参:连乘的元素起始地址;连乘的元素结束地址,连乘的初值(通常为1)。例如:
con_product= accumulate(list, list+3, 1, multiplies<int>()) ;得出sum=6.
如果con_product= accumulate(list, list+3, 10, multiplies<int>()) ;得出sum=60.
求string合并,
string a_sum=accumulate(a.begin(), a.end(),string("out: "));得到out: 1-2345+6