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このような例外が発生したときに既知の状態のままにします。
コンストラクター
オブジェクトの型を構築するforward_list。 |
Typedef
前方のリスト オブジェクトのアロケーター クラスを表す型。 |
|
前方の一覧の定数反復子を提供する型。 |
|
ポインターを提供する型は、 const 、前方のリスト内の要素。 |
|
前方のリスト内の要素への定数参照を提供する型。 |
|
前方リストの反復子が指す要素間の範囲内の要素の数を表すために使用できます符号付き整数型を指定します。 |
|
前方リストの反復子を提供する型。 |
|
前方リスト内の要素へのポインターを提供する型。 |
|
前方リスト内の要素への参照を提供する型。 |
|
2 つの要素間の符号なしの距離を表す型。 |
|
前方のリストに格納されている要素の型を表す型。 |
メンバー関数
前方のリストからの要素を消去し、ターゲット前方リストに新しい一連の要素をコピーします。 |
|
前方リスト内の最初の要素の前に位置をアドレス指定、反復子を返します。 |
|
前方リスト内の最初の要素のアドレスを指定する反復子を返します。 |
|
前方リスト内の最初の要素の前に位置をアドレス指定、const 反復子を返します。 |
|
前方リスト内の最初の要素のアドレス指定 const の反復子を返します。 |
|
前方リスト内の最後の要素を成功の場所のアドレスを const 反復子を返します。 |
|
前方リストのすべての要素を消去します。 |
|
移動後の指定した位置に新しい要素を構築します。 |
|
場所、ボックスの一覧の先頭に構築要素を追加します。 |
|
前方のリストが空であるかどうかをテストします。 |
|
前方リスト内の最後の要素を成功の場所に対応する反復子を返します。 |
|
要素、前方のリストから、指定した位置より後を削除します。 |
|
前方リスト内の最初の要素への参照を返します。 |
|
前方のリストを構築するために使用するアロケーター オブジェクトのコピーを返します。 |
|
要素、前方のリストに、指定した位置より後を追加します。 |
|
前方リストの最大長を返します。 |
|
引数リストから要素を削除、ターゲット前方リストには、それらを挿入し、合計の新しいセットの要素を昇順でまたは別の指定した順序で注文します。 |
|
前方リストの先頭要素を削除します。 |
|
前方の一覧の先頭に要素を追加します。 |
|
指定した値に一致する前方リスト内の要素を消去します。 |
|
前方リストの指定された述語を満たす要素を消去します。 |
|
前方リストの新しいサイズを指定します。 |
|
前方の一覧で、要素が出現する順序を逆にします。 |
|
昇順、または述語によって指定された順序で要素を整列します。 |
|
ノード間のリンクを restitches します。 |
|
前方リストの 2 つの要素を交換します。 |
|
指定したテストに合格した隣接する要素を削除します。 |
演算子
前方リストの別のコピーが、前方のリストの要素を置き換えます。 |
必要条件
ヘッダー: <forward_list>
名前空間: std