std::front_insert_iterator_C++中文网

定义于头文件 <iterator>

template< class Container >

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

                                                   void,void,void,void >

(C++17 前)

template< class Container >
class front_insert_iterator;

(C++17 起)

std::front_insert_iterator 是前附元素到为之构造迭代器的遗留输出迭代器 (LegacyOutputIterator) 。凡在赋值给(无论是否解引用)迭代器时调用容器的 push_front() 成员函数。自增 std::front_insert_iterator 是无操作。

成员类型

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

成员函数

成员对象

 
成员名 定义
container (受保护成员对象) Container* 类型指针

示例

#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)); // 或 std::front_inserter(d)
    for(int n : d)
        std::cout << n << ' ';
    std::cout << '\n';
}

输出:

参阅