在C++中,std::accumulate
函數(shù)用于計算指定范圍內(nèi)元素的累積值。它需要包含頭文件 <numeric>
。
std::accumulate
函數(shù)有多個重載版本,其中最常用的版本如下:
template< class InputIt, class T >
T accumulate( InputIt first, InputIt last, T init );
其中,first
和last
參數(shù)指定了要計算的元素范圍,init
參數(shù)是初始值。
以下是一個示例代碼,演示如何使用std::accumulate
函數(shù)計算數(shù)組中的元素總和:
#include <iostream>
#include <numeric>
#include <vector>
int main() {
std::vector<int> numbers = {1, 2, 3, 4, 5};
int sum = std::accumulate(numbers.begin(), numbers.end(), 0);
std::cout << "Sum of numbers: " << sum << std::endl;
return 0;
}
在這個示例中,我們首先創(chuàng)建了一個包含幾個整數(shù)的向量numbers
,然后使用std::accumulate
函數(shù)計算了這些整數(shù)的總和,并將結(jié)果打印出來。
通過改變初始化值,也可以使用std::accumulate
函數(shù)計算其他類型的累積值,比如計算乘積等。