std::iota
是 C++ 标准库中的一个算法,位于 <numeric>
头文件中。它的作用是用一个连续的范围内的递增序列填充容器。
函数签名如下:
template< class ForwardIt, class T >
void iota( ForwardIt first, ForwardIt last, T value );
其中:
first
是要填充的范围的起始迭代器。last
是要填充的范围的末尾迭代器(不包括末尾)。value
是起始值,std::iota
会从value
开始生成递增的值。
以下是一个简单的示例,说明了 std::iota
的用法:
#include <iostream>
#include <numeric>
#include <vector>
int main() {
std::vector<int> numbers(5); // 创建一个包含5个元素的 vector
std::iota(numbers.begin(), numbers.end(), 1); // 从1开始填充递增序列
for (const auto& num : numbers) {
std::cout << num << " ";
}
return 0;
}
在这个示例中,std::iota
将从1开始生成递增的整数,并填充到 numbers
容器中。输出将是 1 2 3 4 5
。