在C++中,std::accumulate
函數用于計算指定范圍內元素的累積值。它需要包含頭文件 <numeric>
。
std::accumulate
函數有多個重載版本,其中最常用的版本如下:
template< class InputIt, class T >
T accumulate( InputIt first, InputIt last, T init );
其中,first
和last
參數指定了要計算的元素范圍,init
參數是初始值。
以下是一個示例代碼,演示如何使用std::accumulate
函數計算數組中的元素總和:
#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;
}
在這個示例中,我們首先創建了一個包含幾個整數的向量numbers
,然后使用std::accumulate
函數計算了這些整數的總和,并將結果打印出來。
通過改變初始化值,也可以使用std::accumulate
函數計算其他類型的累積值,比如計算乘積等。