| cppreference.com -> C++ 両端キュー -> 詳細 |
deque(); deque( size_type size ); deque( size_type num, const TYPE &val ); deque( const deque &from ); deque( input_iterator start, input_iterator end ); |
C++ 両端キューは以下のいずれかの引数を伴って構築される:
以下のコードは両端キューを生成・表示する例である:
// 十個の '1' を格納した両端キューを生成する
deque<int> dq( 10, 1 );
// イテレータを生成する
deque<int>::iterator iter;
// 両端キューの内容を表示する
for( iter = dq.begin(); iter != dq.end(); iter++ ){
cout << *iter << endl;
}
[] |
両端キューの個々の要素に対して [] 演算子を用いてアクセスできる。
void assign( input_iterator start, input_iterator end ); void assign( Size num, const TYPE &val ); |
関数 assign() は両端キューに対して start から end で表記されるシーケンス、 もしくは num 個の val をセットする。
reference at( size_type pos ); |
at() 関数は両端キューの位置 pos にある要素への参照を返す。 位置 pos が有効な範囲外にあるときは out_of_range 例外を送出する。
reference back(); |
back() 関数は両端キューの最終要素への参照を返す。
iterator begin(); |
begin() 関数は両端キューの先頭を指す イテレータ を返す。
void clear(); |
clear() 関数は両端キューの全要素を削除する。
bool empty(); |
empty() 関数は両端キューが空のときに true を返し、 そうでないときに false を返す。
iterator end(); |
end() 関数は両端キューの末尾を指す イテレータ を返す。 両端キューの最終要素にアクセスするには、イテレータをデクリメントする必要があることに注意。
iterator erase( iterator pos ); iterator erase( iterator start, iterator end ); |
erase() 関数は位置 pos にある要素 もしくは start と end の間にある要素を削除する。 戻り値は、削除された最終要素の直後を指す イテレータ である。
reference front(); |
front() 関数は両端キューの先頭要素への参照を返す。
allocator_type get_allocator(); |
get_allocator() 関数は両端キューのアロケータを返す。
iterator insert( iterator pos, const TYPE &val ); iterator insert( iterator pos, size_type num, const TYPE &val ); void insert( iterator pos, input_iterator start, input_iterator end ); |
insert() 関数は以下のいずれかの動作を行う:
size_type max_size(); |
max_size() 関数は両端キューが保持できる最大要素数を返す。
void pop_back(); |
pop_back() 関数は両端キューの最終要素を削除する。
void pop_front(); |
pop_back() 関数は両端キューの先頭要素を削除する。
void push_back( const TYPE &val ); |
push_back() 関数は val を両端キュー末尾に追加する。
void push_front( const TYPE &val ); |
push_front() 関数は val を両端キュー先頭に追加する。
reverse_iterator rbegin(); |
rbegin() 関数は両端キュー末尾を指すリバースイテレータ を返す。
reverse_iterator rend(); |
rbegin() 関数は両端キュー先頭を指すリバースイテレータ を返す。
void resize( size_type num, TYPE val ); |
resize() 関数は両端キューのサイズを num に変更し、 新規に追加された項目を val に設定する。
size_type size(); |
size() 関数は両端キュー中の要素数を返す。
void swap( deque &target ); |
swap() 関数は両端キュー中の要素を target の要素と交換する。