头文件#include <numeric>
,函数原型:
template< class ForwardIt, class T >
void iota( ForwardIt first, ForwardIt last, T value);
作用:以始于value并重复地求值++value
的顺序递增填充范围[first, last)
。
示例代码:
#include <iostream>
#include <vector>
#include <numeric>
using namespace std;
int main() {
int n = 10;
vector<int> a(n, 0);
iota(a.begin(), a.end(), 1);
for (int i = 0; i < n; i++) {
cout << "i = " << i << ", a[i] = " << a[i] << endl;
}
return 0;
}
输出为,
i = 0, a[i] = 1
i = 1, a[i] = 2
i = 2, a[i] = 3
i = 3, a[i] = 4
i = 4, a[i] = 5
i = 5, a[i] = 6
i = 6, a[i] = 7
i = 7, a[i] = 8
i = 8, a[i] = 9
i = 9, a[i] = 10