名前空間
変種

「cpp/container/multimap」の版間の差分

提供: cppreference.com
Osm329 (トーク | 投稿記録)
編集の要約なし
Milkpot (トーク | 投稿記録)
編集の要約なし
 
(3人の利用者による、間の9版が非表示)
1行目: 1行目:
{{tr_note}}
{{cpp/title|multimap}}
{{cpp/title|multimap}}
{{cpp/container/multimap/navbar}}
{{cpp/container/multimap/navbar}}
{{ddcl | header=map |
{{
|
=|
template<
template<
     class Key,
     class Key,
10行目: 11行目:
> class multimap;
> class multimap;
}}  
}}  


Multimapは、キーと値のペアのソートされたリストを含む連想コンテナです。ソートはキーに適用され、比較関数{{tt|Compare}}に従って行われます。検索、挿入、および削除の操作の計算量は、対数オーダーです.
{{
|
}}


等価なキーを持つキーと値のペアの順序は挿入した順序となり、変化しません。 {{mark since c++11}}
{{}}


{{tt|std::multimap}}は{{concept|Container}}{{concept|AllocatorAwareContainer}}{{concept|AssociativeContainer}}{{concept|ReversibleContainer}}の要件を満たします.
{{tt|std::multimap}} は {{|Container}}{{|AllocatorAwareContainer}}{{|AssociativeContainer}}{{|ReversibleContainer}}


===メンバータイプ===
======
{{dcl list begin}}
{{begin}}
{{dcl list hitem |{{tr| メンバー·タイプ | Member type }}| Definition}}
{{hitem | | }}
{{dcl list template | cpp/container/dcl list key_type | multimap}}
{{| cpp/container/key_type | multimap}}
{{dcl list template | cpp/container/dcl list mapped_type | multimap}}
{{| cpp/container/mapped_type | multimap}}
{{dcl list template | cpp/container/dcl list value_type | multimap}}
{{| cpp/container/value_type | multimap}}
{{dcl list template | cpp/container/dcl list size_type | multimap}}
{{| cpp/container/size_type | multimap}}
{{dcl list template | cpp/container/dcl list difference_type | multimap}}
{{| cpp/container/difference_type | multimap}}
{{dcl list template | cpp/container/dcl list key_compare | multimap}}
{{| cpp/container/key_compare | multimap}}
{{dcl list template | cpp/container/dcl list allocator_type | multimap}}
{{| cpp/container/allocator_type | multimap}}
{{dcl list template | cpp/container/dcl list reference | multimap}}
{{| cpp/container/reference | multimap}}
{{dcl list template | cpp/container/dcl list const_reference | multimap}}
{{| cpp/container/const_reference | multimap}}
{{dcl list template | cpp/container/dcl list pointer | multimap}}
{{| cpp/container/pointer | multimap}}
{{dcl list template | cpp/container/dcl list const_pointer | multimap}}
{{| cpp/container/const_pointer | multimap}}
{{dcl list template | cpp/container/dcl list iterator | multimap}}
{{| cpp/container/iterator | multimap}}
{{dcl list template | cpp/container/dcl list const_iterator | multimap}}
{{| cpp/container/const_iterator | multimap}}
{{dcl list template | cpp/container/dcl list reverse_iterator | multimap}}
{{| cpp/container/reverse_iterator | multimap}}
{{dcl list template | cpp/container/dcl list const_reverse_iterator | multimap}}
{{| cpp/container/const_reverse_iterator | multimap}}
{{dcl list end}}
{{
end}}


===メンバークラス===
======
{{dcl list begin}}
{{begin}}
{{dcl list template | cpp/container/dcl list value_compare | multimap}}
{{| cpp/container/value_compare | multimap}}
{{dcl list end}}
{{end}}


===メンバ関数===
===メンバ関数===
{{dcl list begin}}
{{begin}}
{{dcl list template | cpp/container/dcl list constructor | multimap}}
{{| cpp/container/constructor | multimap}}
{{dcl list template | cpp/container/dcl list destructor | multimap}}
{{| cpp/container/destructor | multimap}}
{{dcl list template | cpp/container/dcl list operator{{=}} | multimap}}
{{| cpp/container/operator{{=}} | multimap}}
{{dcl list template | cpp/container/dcl list get_allocator | multimap}}
{{| cpp/container/get_allocator
 
| multimap}}


{{dcl list h2 |{{tr| イテレータ| Iterators}}}}
{{h2 | }}
{{dcl list template | cpp/container/dcl list begin | multimap}}
{{| cpp/container/| multimap}}
{{dcl list template | cpp/container/dcl list end | multimap}}
{{| cpp/container/| multimap}}
{{dcl list template | cpp/container/dcl list rbegin | multimap}}
{{| cpp/container/| multimap}}
{{dcl list template | cpp/container/dcl list rend | multimap}}


{{dcl list h2 |{{tr| 容量| Capacity}}}}
{{h2 |
{{dcl list template | cpp/container/dcl list empty | multimap}}
{{dcl list template | cpp/container/dcl list size | multimap}}
{{dcl list template | cpp/container/dcl list max_size | multimap}}
{{| | }}
}}
{{| cpp/container/| multimap}}
{{| cpp/container/| multimap}}
{{| cpp/container/| multimap}}


{{dcl list h2 |{{tr| 修正| Modifiers}}}}
{{dcl list template | cpp/container/dcl list clear | multimap}}
{{dcl list template | cpp/container/dcl list insert | multimap}}
{{dcl list template | cpp/container/dcl list emplace | multimap}}
{{dcl list template | cpp/container/dcl list emplace_hint | multimap}}
{{dcl list template | cpp/container/dcl list erase | multimap}}
{{dcl list template | cpp/container/dcl list swap | multimap}}


{{dcl list h2 |{{tr| 検索| Lookup}}}}
{{h2 |
{{dcl list template | cpp/container/dcl list count | multimap}}
{{| | }}
{{dcl list template | cpp/container/dcl list find | multimap}}
{{| cpp/container/| multimap}}
{{dcl list template | cpp/container/dcl list equal_range | multimap}}
{{| cpp/container/| multimap}}
{{dcl list template | cpp/container/dcl list lower_bound | multimap}}
{{| cpp/container/equal_range | multimap}}
{{dcl list template | cpp/container/dcl list upper_bound | multimap}}
{{| cpp/container/lower_bound | multimap}}
{{| cpp/container/upper_bound | multimap}}


{{dcl list h2 |{{tr| オブザーバー| Observers}}}}
{{h2 | }}
{{dcl list template | cpp/container/dcl list key_comp | multimap}}
{{| cpp/container/key_comp | multimap}}
{{dcl list template | cpp/container/dcl list value_comp | multimap}}
{{| cpp/container/value_comp | multimap}}
{{dcl list end}}
{{end}}


===非メンバ関数===
===非メンバ関数===
{{dcl list begin}}
{{begin}}
{{dcl list template | cpp/container/dcl list operator_cmp | multimap}}
{{| cpp/container/operator_cmp | multimap}}
{{dcl list template | cpp/container/dcl list swap2 | multimap}}
{{| cpp/container/swap2 | multimap}}
{{dcl list end}}
{{
end}}
 


[[de:cpp/container/multimap]]
deenesfritplptruzh
[[en:cpp/container/multimap]]
[[es:cpp/container/multimap]]
[[fr:cpp/container/multimap]]
[[it:cpp/container/multimap]]
[[pl:cpp/container/multimap]]
[[pt:cpp/container/multimap]]
[[ru:cpp/container/multimap]]
[[zh:cpp/container/multimap]]

2018年11月24日 (土) 01:57時点における最新版

 
 
 
 
<tbody> </tbody>
ヘッダ <map> で定義
template< class Key, class T, class Compare = std::less<Key>, class Allocator = std::allocator<std::pair<const Key, T> > > class multimap;
(1)
namespace pmr { template <class Key, class T, class Compare = std::less<Key>> using multimap = std::multimap<Key, T, Compare, std::pmr::polymorphic_allocator<std::pair<const Key,T>>>; }
(2) (C++17以上)

multimap はキーと値のペアのソートされた一覧を格納する連想コンテナです。 同じキーのエントリを複数格納できます。 ソートは、キーを比較関数 Compare に適用した結果に従って行われます。 検索、挿入、削除の操作の計算量は対数時間です。

キーが等しい要素の順序は挿入順となり、変更されることはありません。

(C++11以上)

標準ライブラリが Compare 要件を使用する場所ではすべて、一意性は同等関係を使用して決定されます。 不正確な言葉で言うと、2つのオブジェクト ab は、どちらがどちらより小さいわけでもない (!comp(a, b) && !comp(b, a)) 場合に等しいとみなされます。

std::multimapContainer, AllocatorAwareContainer, AssociativeContainer, ReversibleContainer の要件を満たします。

メンバ型

メンバ型 定義
key_type Key [edit]
mapped_type T [edit]
value_type std::pair<const Key, T> [edit]
size_type 符号なし整数型 (通常 std::size_t) [edit]
difference_type 符号付き整数型 (通常 std::ptrdiff_t) [edit]
key_compare Compare [edit]
allocator_type Allocator [edit]
reference
Allocator::reference (C++11未満)
value_type& (C++11以上)
[edit]
const_reference
Allocator::const_reference (C++11未満)
const value_type& (C++11以上)
[edit]
pointer
Allocator::pointer (C++11未満)
std::allocator_traits<Allocator>::pointer (C++11以上)
[edit]
const_pointer
Allocator::const_pointer (C++11未満)
std::allocator_traits<Allocator>::const_pointer (C++11以上)
[edit]
iterator LegacyBidirectionalIterator [edit]
const_iterator const LegacyBidirectionalIterator [edit]
reverse_iterator std::reverse_iterator<iterator> [edit]
const_reverse_iterator std::reverse_iterator<const_iterator> [edit]
node_type
(C++17以上)
コンテナノードを表すノードハンドルの特殊化 [edit]

メンバクラス

value_type 型のオブジェクトを比較します
(クラス) [edit]

メンバ関数

multimap を構築します
(パブリックメンバ関数) [edit]
multimap を破棄します
(パブリックメンバ関数) [edit]
コンテナに値を代入します
(パブリックメンバ関数) [edit]
関連付けられているアロケータを返します
(パブリックメンバ関数) [edit]
イテレータ
先頭を指すイテレータを返します
(パブリックメンバ関数) [edit]
終端を指すイテレータを返します
(パブリックメンバ関数) [edit]
先頭を指す逆イテレータを返します
(パブリックメンバ関数) [edit]
終端を指す逆イテレータを返します
(パブリックメンバ関数) [edit]
容量
コンテナが空かどうか調べます
(パブリックメンバ関数) [edit]
要素数を返します
(パブリックメンバ関数) [edit]
可能な最大の要素数を返します
(パブリックメンバ関数) [edit]
変更
すべての要素を削除します
(パブリックメンバ関数) [edit]
要素またはノード (C++17以上)を挿入します
(パブリックメンバ関数) [edit]
(C++11)
要素をその場で構築します
(パブリックメンバ関数) [edit]
ヒントを使用して要素をその場で構築します
(パブリックメンバ関数) [edit]
要素を削除します
(パブリックメンバ関数) [edit]
(C++11)
内容を入れ替えます
(パブリックメンバ関数) [edit]
(C++17)
コンテナからノードを抽出します
(パブリックメンバ関数) [edit]
(C++17)
他のコンテナからノードを接合します
(パブリックメンバ関数) [edit]
検索
指定されたキーと一致する要素の数を返します
(パブリックメンバ関数) [edit]
指定されたキーを持つ要素を探します
(パブリックメンバ関数) [edit]
(C++20)
コンテナが指定されたキーを持つ要素を格納しているかどうか調べます
(パブリックメンバ関数) [edit]
指定されたキーに一致する要素の範囲を返します
(パブリックメンバ関数) [edit]
指定されたキーより小さくない最初の要素を指すイテレータを返します
(パブリックメンバ関数) [edit]
指定されたキーより大きい最初の要素を指すイテレータを返します
(パブリックメンバ関数) [edit]
観察
キーを比較する関数を返します
(パブリックメンバ関数) [edit]
value_type 型のオブジェクト内のキーを比較する関数を返します
(パブリックメンバ関数) [edit]

非メンバ関数

(C++20で削除)(C++20で削除)(C++20で削除)(C++20で削除)(C++20で削除)(C++20)
multimap 内の値を辞書的に比較します
(関数テンプレート) [edit]
std::swap アルゴリズムの特殊化
(関数テンプレート) [edit]
特定の基準を満たすすべての要素を削除します
(関数テンプレート) [edit]

推定ガイド(C++17以上)