std::back_inserter_iterator

 

翻译:https://en.cppreference.com/w/cpp/iterator/back_inserter

 

定义在头文件 <iterator>

函数声明如下:

template< class Container >
std::back_insert_iterator<Container> back_inserter( Container& c );

template< class Container >
constexpr std::back_insert_iterator<Container> back_inserter( Container& c );

back_inserter 是一个非常方面的函数模板,它为容器 c 构造了一个 std::back_inserter_iterator ,其中并且它是从参数的类型推导出容器 C 的类型。

 

参数:

c - 支持 push_back 操作的容器

返回值:

一个 std::back_insert_iterator 可以用来在容器 C 末尾增加元素的类型

 

实现代码:

template< class Container >
std::back_insert_iterator<Container> back_inserter( Container& c )
{
    return std::back_insert_iterator<Container>(c);
}

 

例子:

复制代码
#include <iostream>
#include <vector>
#include <algorithm>
#include <iterator>
 
int main()
{
    std::vector<int> v{1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
    std::fill_n(std::back_inserter(v), 3, -1);
    for (int n : v)
        std::cout << n << ' ';
}
复制代码

 

输出:

1 2 3 4 5 6 7 8 9 10 -1 -1 -1
posted @   王清河  阅读(68)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
历史上的今天:
2019-06-06 make文件基础用法
点击右上角即可分享
微信分享提示