次の方法で共有


forward_list Class

要素の可変長シーケンスを制御するオブジェクトについて説明します。シーケンス ノードの構成される、一重リンク リストとして各型のメンバーを含む格納されますType。

template<class Type, class Allocator = allocator<Type> >
    class forward_list {
public:
    typedef Allocator allocator_type;
    typedef typename Allocator::pointer pointer;
    typedef typename Allocator::const_pointer
        const_pointer;
    typedef typename Allocator::reference reference;
    typedef typename Allocator::const_reference const_reference;
    typedef typename Allocator::value_type value_type;
    typedef typename Allocator::size_type size_type;
    typedef typename Allocator::difference_type difference_type;

    typedef T0 iterator;
    typedef T1 const_iterator;

    forward_list();
    explicit forward_list(const Allocator& _Alloc);
    explicit forward_list(size_type _Count);
    forward_list(
        size_type _Count, 
        const Type& _Val
    );
    forward_list(
        size_type _Count, 
        const Type& _Val, 
        const Allocator& _Alloc
    );
    forward_list(const forward_list& _Right);
    template<class InputIterator>
        forward_list (
            InputIterator _First, 
            InputIterator _Last
);
    template<class InputIterator>
        forward_list (
            InputIterator _First,
            InputIterator _Last, 
            const Allocator& _Alloc
);

    forward_list (initializer_list<Type> _Init)
    forward_list (
        initializer_list<Type> _Init,
        const Allocator& _Alloc
);
    forward_list (forward_list&& _Right);
 
    ~forward_list();

    forward_list& operator= (const forward_list& _Right);
    forward_list& operator= (forward_list&& _Right);

    iterator before_begin ();
    const_iterator before_begin () const;
    iterator begin ();
    const_iterator begin () const;
    iterator end ();
    const_iterator end () const;

    const_iterator cbefore_begin () const;
    const_iterator cbegin () const;
    const_iterator cend () const;

    void resize (size_type _Count);
    void resize (
        size_type _Count, 
        const Type& _Val
    );
    size_type max_size () const;
    bool empty () const;

    Alloc get_allocator () const;

    reference front ();
    const_reference front () const;

    void push_front (const Type& _Val);
    void push_front (Type&& _Val);
    template<class _Type>
        void emplace_front(_Type&& _Val);
    void pop_front ();

    template<class InputIterator>
        void assign (
            InputIterator _First, 
            InputIterator _Last
);
    void assign (
        size_type _Count, 
        const Type& _Val
    );

    iterator insert_after (
        const_iterator _Pos, 
        const Type& _Val
    );
    void insert_after (
        const_iterator _Pos, 
        size_type _Count, 
        const Type& _Val
    );
    template<class InputIterator >
        void insert_after (
            const_iterator _Pos, 
            InputIterator _First, 
            InputIterator _Last
        );
    void insert_after (
        const iterator _Pos, 
        initializer_list<Type> _Init
)
    iterator insert_after (
        const_iterator _Pos, 
        Type&& _Val
    );
    template<class Type>
        iterator emplace_after(const_iterator _Where, Type&& _Val);
    iterator erase_after (const_iterator _Pos);
    iterator erase_after (
        const_iterator _First, 
        const_iterator _Last
    );
    void clear ();

    void swap (forward_list& _Right);

    void splice_after (
        const_iterator _Pos, 
        forward_list& _List
    );
    void splice_after (
        const_iterator _Pos, 
        forward_list& _List, 
        iterator _First
    );
    void splice_after (
        const_iterator _Pos, 
        forward_list& _List, 
        iterator _First,
        iterator _Last);

    void remove (const Type& _Val);
    template<class Predicate>
        void remove_if (Predicate _Pred);
    void unique ();
    template<class BinaryPredicate>
        void unique (BinaryPredicate _Comp);

    void merge (forward_list& _List);
    template<class BinaryPredicate>
        void merge (
            forward_list& _List, 
            BinaryPredicate _Comp
);
    void sort ();
    template<class BinaryPredicate>
        void sort (BinaryPredicate _Comp);
    void reverse ();
};

パラメーター

パラメーター

Description

Type

Forward_list に格納される要素のデータ型。

_Alloc

Forward_list の割り当てとメモリの割り当て解除の詳細をカプセル化するストアド アロケーター オブジェクトです。このパラメーターは省略できます。既定値はアロケーターです <Type>。

_Count

Forward_list 内の要素の数。

_Val

要素を追加するのには、 forward_list

_Right

リストに組み込むために、 forward_list

_Pos

イテレータ内の場所を示す、 forward_list

_First

イテレータ内の要素の範囲の開始位置を示す、 forward_list

_Last

イテレータ内の要素の範囲の終了位置を示す、 forward_list

_Init

初期化子リスト

_List

結合するには、forward_list ライス、またはから割り当てます。

_Comp

比較関数。

解説

A forward_listオブジェクトが割り当てられ、クラスのストアドのオブジェクトによって制御シーケンス用のストレージを解放するAllocatorを基にallocator Class (として一般に知られてstd::allocator)。詳細については、「アロケーター」を参照してください。アロケーター オブジェクトは、テンプレート クラスのオブジェクトと同じ外部インターフェイスが必要allocator

[!メモ]

コンテナー オブジェクトを代入すると、格納されているアロケーター オブジェクトはコピーされません。

反復子、ポインター、および参照が無効になる可能性は、被制御シーケンスの要素を消去するとforward_list。挿入し、接続を実行するのには、被制御シーケンスをforward_list反復子無効にしないでください。

呼び出しによって、被制御シーケンスに追加が発生するforward_list::insert_after、コンス トラクターを呼び出すだけのメンバー関数がType(const _Type&)。forward_listコンス トラクター呼び出しを移動するも可能性があります。このような式は例外をスローする場合は、コンテナー オブジェクト新しい要素を挿入しないと、例外を再スローします。したがって、テンプレート クラスの object forward_listこのような例外が発生したときに既知の状態のままにします。

Ee373559.collapse_all(ja-jp,VS.110).gifコンストラクター

forward_list

オブジェクトの型を構築するforward_list。

Ee373559.collapse_all(ja-jp,VS.110).gifTypedef

allocator_type

前方のリスト オブジェクトのアロケーター クラスを表す型。

const_iterator

前方の一覧の定数反復子を提供する型。

const_pointer

ポインターを提供する型は、 const 、前方のリスト内の要素。

const_reference

前方のリスト内の要素への定数参照を提供する型。

difference_type

前方リストの反復子が指す要素間の範囲内の要素の数を表すために使用できます符号付き整数型を指定します。

iterator

前方リストの反復子を提供する型。

ポインター

前方リスト内の要素へのポインターを提供する型。

参照

前方リスト内の要素への参照を提供する型。

size_type

2 つの要素間の符号なしの距離を表す型。

value_type

前方のリストに格納されている要素の型を表す型。

Ee373559.collapse_all(ja-jp,VS.110).gifメンバー関数

assign

前方のリストからの要素を消去し、ターゲット前方リストに新しい一連の要素をコピーします。

before_begin

前方リスト内の最初の要素の前に位置をアドレス指定、反復子を返します。

begin

前方リスト内の最初の要素のアドレスを指定する反復子を返します。

cbefore_begin

前方リスト内の最初の要素の前に位置をアドレス指定、const 反復子を返します。

cbegin

前方リスト内の最初の要素のアドレス指定 const の反復子を返します。

cend

前方リスト内の最後の要素を成功の場所のアドレスを const 反復子を返します。

clear

前方リストのすべての要素を消去します。

emplace_after

移動後の指定した位置に新しい要素を構築します。

emplace_front

場所、ボックスの一覧の先頭に構築要素を追加します。

empty

前方のリストが空であるかどうかをテストします。

End

前方リスト内の最後の要素を成功の場所に対応する反復子を返します。

erase_after

要素、前方のリストから、指定した位置より後を削除します。

front

前方リスト内の最初の要素への参照を返します。

get_allocator

前方のリストを構築するために使用するアロケーター オブジェクトのコピーを返します。

insert_after

要素、前方のリストに、指定した位置より後を追加します。

max_size

前方リストの最大長を返します。

merge

引数リストから要素を削除、ターゲット前方リストには、それらを挿入し、合計の新しいセットの要素を昇順でまたは別の指定した順序で注文します。

pop_front

前方リストの先頭要素を削除します。

push_front

前方の一覧の先頭に要素を追加します。

remove

指定した値に一致する前方リスト内の要素を消去します。

remove_if

前方リストの指定された述語を満たす要素を消去します。

resize

前方リストの新しいサイズを指定します。

リバース

前方の一覧で、要素が出現する順序を逆にします。

sort

昇順、または述語によって指定された順序で要素を整列します。

splice_after

ノード間のリンクを restitches します。

スワップ

前方リストの 2 つの要素を交換します。

unique

指定したテストに合格した隣接する要素を削除します。

Ee373559.collapse_all(ja-jp,VS.110).gif演算子

operator=

前方リストの別のコピーが、前方のリストの要素を置き換えます。

必要条件

ヘッダー: <forward_list>

名前空間: std

参照

関連項目

<forward_list>

その他の技術情報

<forward_list> メンバー