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个元素的 vectorstd::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。