std::iota 函数简单使用

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

相关推荐
不会C语言的男孩12 小时前
C++ Primer 第18章:用于大型程序的工具
开发语言·c++
星恒随风12 小时前
C++ 类和对象入门(三):拷贝构造、赋值运算符重载和深浅拷贝
开发语言·c++·笔记·学习
Cx330❀12 小时前
【MySQL基础】库与表的全面操纵指南
linux·服务器·网络·数据库·c++·mysql
凡人叶枫12 小时前
Effective C++ 条款03:尽可能使用 const
linux·开发语言·c++·嵌入式开发
小欣加油13 小时前
Leetcode31 下一个排列
数据结构·c++·算法·leetcode·职场和发展
Cx330❀13 小时前
【Linux网络】高性能 TCP 服务器:从多线程到线程池的架构演进与落地实践
linux·运维·服务器·网络·c++·tcp/ip·架构
c2385613 小时前
C++的IO流深入理解(上)
开发语言·c++
炘爚13 小时前
Phase 4:业务线程池 — IO/计算解耦
linux·c++
张小姐的猫13 小时前
【Linux】多线程 —— 线程池 | 单例模式 | 常见锁
linux·运维·服务器·c++·单例模式·设计模式·策略模式
郝学胜-神的一滴13 小时前
力扣 662 :二叉树最大宽度
java·数据结构·c++·python·算法·leetcode·职场和发展