名前空間
変種
操作

std::front_inserter

提供: cppreference.com
< cpp‎ | iterator
 
 
イテレータライブラリ
イテレータコンセプト
イテレータプリミティブ
アルゴリズムのコンセプトとユーティリティ
間接呼び出し可能コンセプト
共通アルゴリズム要件
ユーティリティ
イテレータアダプタ
ストリームイテレータ
イテレータのカスタマイゼーションポイント
イテレータ操作
(C++11)
(C++11)
範囲アクセス
(C++11)(C++14)
(C++11)(C++14)
(C++17)(C++20)
(C++14)(C++14)
(C++14)(C++14)
(C++17)
(C++17)
 
ヘッダ <iterator> で定義
template< class Container >
std::front_insert_iterator<Container> front_inserter( Container& c );
(C++20未満)
template< class Container >
constexpr std::front_insert_iterator<Container> front_inserter( Container& c );
(C++20以上)

front_inserter はコンテナ c のための引数型から推定した型を持つ std::front_insert_iterator を構築する便利関数テンプレートです。

目次

[編集] 引数

c - push_front 操作をサポートするコンテナ

[編集] 戻り値

コンテナ c の先頭に要素を挿入するために使用できる std::front_insert_iterator

[編集] 実装例

template< class Container >
std::front_insert_iterator<Container> front_inserter( Container& c )
{
    return std::front_insert_iterator<Container>(c);
}

[編集]

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

出力:

5 4 3 2 1

[編集] 関連項目

コンテナの先頭に挿入するためのイテレータアダプタ
(クラステンプレート) [edit]
引数から推定した型の std::back_insert_iterator を作成します
(関数テンプレート) [edit]
引数から推定した型の std::insert_iterator を作成します
(関数テンプレート) [edit]