以下の説明において:
n :負でない整数
t :要素のインスタンス
i,j :input iterator
p,q :要素のイテレータ
X :コンテナのクラス名
x :コンテナのインスタンス
N :コンテナのサイズ
|
vector,deque |
list |
set,multiset |
map,multimap |
key_type
|
|
|
○
|
○
|
mapped_type
|
|
|
|
○
|
key_compare
|
|
|
○
|
○
|
reference
|
○
|
○
|
○
|
○
|
const_reference
|
○
|
○
|
○
|
○
|
iterator
|
○
|
○
|
○
|
○
|
const_iterator
|
○
|
○
|
○
|
○
|
reverse_iterator
|
○
|
○
|
○
|
○
|
const_reverse_iterator
|
○
|
○
|
○
|
○
|
size_type
|
○
|
○
|
○
|
○
|
defference_type
|
○
|
○
|
○
|
○
|
value_type
|
○
|
○
|
○
|
○
|
value_compare
|
|
|
○
|
○
|
allocator_type
|
○
|
○
|
○
|
○
|
pointer
|
○
|
○
|
○
|
○
|
const_pointer
|
○
|
○
|
○
|
○
|
イテレータ-の種類
|
RandomAccess
|
Bidirectional
|
Bidirectional
|
Bidirectional
|
コンストラクタ/デストラクタ/コピー/交換
n :負でない整数
t :要素のインスタンス
i,j :input iterator
X :コンテナのクラス名
x :コンテナのインスタンス
comp :比較オブジェクト
alloc:アロケーター
|
vector,deque,list |
set,multiset,map,multimap |
X(alloc)
|
○
|
|
X(comp,alloc)
|
|
○
|
X(i,j,alloc)
|
○
|
|
X(i,j,comp,alloc)
|
|
○
|
X(x)
|
○
|
○
|
~X()
|
○
|
○
|
operator=(x)
|
○
|
○
|
assign(i,j)
|
○
|
○
|
assign(n,t)
|
○
|
○
|
swap(x)
|
○
|
○
|
get_allocator()
|
○
|
○
|
イテレータ
すべてのコンテナに共通
begin()
|
end()
|
rbegin()
|
rend()
|
辞書式比較
すべてのコンテナに共通
x:コンテナのインスタンス
operator==(x)
|
operator!=(x)
|
operator<(x)
|
operator>(x)
|
operator<=(x)
|
operator>=(x)
|
要素数/領域確保
n :負でない整数
t :要素のインスタンス
|
vector |
deque,list |
set,multiset,map,multimap |
size()
|
○
|
○
|
○
|
max_size()
|
○
|
○
|
○
|
empty()
|
○
|
○
|
○
|
resize(n,t)
|
○
|
○
|
|
capacity()
|
○
|
|
|
reserv(n)
|
○
|
|
|
参照
n :負でない整数
N :コンテナのサイズ
key :連想コンテナのキー
|
vector |
deque |
list |
set |
multiset |
map |
multimap |
front()
|
O(1)
|
O(1)
|
O(1)
|
|
|
|
|
back()
|
O(1)
|
O(1)
|
O(1)
|
|
|
|
|
at(n)
|
O(1)
|
O(1)
|
|
|
|
|
|
x[n]
|
O(1)
|
O(1)
|
|
|
|
|
|
x[key]
|
|
|
|
|
|
O(logN)
|
|
挿入
n :負でない整数
t :要素のインスタンス
i,j :input iterator
p,q :要素のイテレータ
N :コンテナのサイズ
|
vector |
deque |
list |
set |
multiset |
map |
multimap |
insert(p,t)
|
O(N)
|
O(N)
|
O(1)
|
O(logN)
|
O(logN)
|
O(logN)
|
O(logN)
|
insert(p,n,t)
|
O(N)
|
O(N)
|
O(1)
|
|
|
|
|
insert(p,i,j)
|
O(N)
|
O(N)
|
O(1)
|
O(logN)
|
O(logN)
|
O(logN)
|
O(logN)
|
insert(t)
|
|
|
|
O(logN)
|
O(logN)
|
O(logN)
|
O(logN)
|
push_front()
|
|
O(1)
|
O(1)
|
|
|
|
|
push_back()
|
O(1)
|
O(1)
|
O(1)
|
|
|
|
|
削除
p,q :要素のイテレータ
N :コンテナのサイズ
key :連想コンテナのキー
|
vector |
deque |
list |
set |
multiset |
map |
multimap |
erase(p)
|
O(N)
|
O(N)
|
O(1)
|
O(logN)
|
O(logN)
|
O(logN)
|
O(logN)
|
erase(p,q)
|
O(N)
|
O(N)
|
O(1)
|
O(logN)
|
O(logN)
|
O(logN)
|
O(logN)
|
erase(key)
|
|
|
|
O(logN)
|
O(logN)
|
O(logN)
|
O(logN)
|
clear()
|
O(N)
|
O(N)
|
O(N)
|
O(N)
|
O(N)
|
O(N)
|
O(N)
|
pop_front()
|
|
O(1)
|
O(1)
|
|
|
|
|
pop_back()
|
O(1)
|
O(1)
|
O(1)
|
|
|
|
|
検索
N :コンテナのサイズ
key :連想コンテナのキー
|
set,multiset,map,multimap |
find(key)
|
O(logN)
|
count(key)
|
O(logN)
|
lower_bound(key)
|
O(logN)
|
upper_bound(key)
|
O(logN)
|
equallrange(key)
|
O(logN)
|
key_compare()
|
○
|
value_compare
|
○
|
リスト操作
t :要素のインスタンス
i,j :input iterator
p,q :要素のイテレータ
x :コンテナのインスタンス
pred:述語(真理値を返す関数オブジェクト)
comp:比較オブジェクト
splice(p,x)
|
splice(p,x,i)
|
splice(p,x,i,j)
|
remove(t)
|
remove(pred)
|
unique()
|
unique(pred)
|
marge(x)
|
marge(x,comp)
|
sort()
|
sort(comp)
|
reverse()
|