std::front_insert_iterator

来自cppreference.com
< cpp‎ | iterator

定义于头文件 <iterator>
template< class Container >

class front_insert_iterator : public std::iterator< std::output_iterator_tag,

                                                   void,void,void,void >
std::front_insert_iterator是输出预先考虑元素的迭代器,它被修建的容器,使用时容器的push_front()成员函数的迭代器(是否解除引用或不)被分配给的。递增std::front_insert_iterator是一个no-op.
原文:
std::front_insert_iterator is an output iterator that prepends elements to a container for which it was constructed, using the container's push_front() member function whenever the iterator (whether dereferenced or not) is assigned to. Incrementing the std::front_insert_iterator is a no-op.
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。

目录

[编辑] 会员类型

会员类型
原文:
Member type
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
Definition
container_type Container

[编辑] 成员函数

Template:cpp/iterator/inserter/dsc operator++
构造新的 front_insert_iterator
(公开成员函数) [编辑]
插入对象到关联的容器
(公开成员函数) [编辑]
空操作
(公开成员函数) [编辑]

[编辑] 会员对象

会员名称
原文:
Member name
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
Definition
container (保护)
Container*类型的指针
原文:
a pointer of type Container*
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。

[编辑] 成员类型

成员类型 定义
value_type void
difference_type void
pointer void
reference void
iterator_category std::output_iterator_tag

注意:在 C++17 前,这些成员类型要求通过从 std::iterator<std::output_iterator_tag,void,void,void,void> 继承而获得。

[编辑] 示例

#include <vector>
#include <deque>
#include <iostream>
#include <iterator>
#include <algorithm>
int main()
{
    std::vector<int> v{1,2,3,4,5};
    std::deque<int> d;
    std::copy(v.begin(), v.end(),
              std::front_insert_iterator<std::deque<int>>(d)); // or std::front_inserter(d)
    for(int n : d)
        std::cout << n << ' ';
    std::cout << '\n';
}

输出:

5 4 3 2 1

[编辑] 另请参阅

创建拥有从参数推出的类型的 std::front_insert_iterator
(函数模板) [编辑]
用于在容器尾部插入的迭代器适配器
(类模板) [编辑]
用于插入容器的迭代器适配器
(类模板) [编辑]