これまでのコンテナのように、直接データを入れるのではなく、mapクラスでは、
pair構造体のメンバー変数として、キーと値を代入し、それをmapコンテナに追加するという
方法になります。
mapクラスの主要な関数
関数名 |
書 式 |
説 明 |
empty |
bool empty() const |
queueの要素が0なら「true」を、カラでなければ「false」を返します |
size |
size_type size() |
要素数を返します |
count |
size_type count(const key_type& key) const |
keyに一致するキーの数(0または1)を返します。 |
insert |
pair<iterator, bool> insert( const value_type &x ) |
xを追加します。戻り値として、結果が帰ります。 |
insert |
iterator insert( iteratorit, const value_type& x ) |
itの直後にxを追加し、イタレーターを返します。 |
insert |
void insert(const value_type* first, const value_type* last) |
firstからlastまでの要素を追加します。 |
find |
iterator find(const key_type& key) |
keyを検索し、その値を指すイタレーターを返します。keyが見つからない場合は最後を示すイタレーターを返します。 |
clear |
void clear() |
すべての要素を削除します。 |
erase |
void erase(iterator it ) |
itが指す要素を削除します。 |
erase |
void erase(iterator start, iterator last ) |
startからlastまでの要素を削除します。 |
erase |
size_type erase(const key_type key ) |
keyを削除します。削除した項目数(0または1)を返します。 |
begin |
iterator begin() |
マップの最初の要素を指すイタレーターを返します |
end |
iterator end() |
マップの末尾を指すイタレーターを返します |
rbegin |
iterator begin() |
マップの末尾を指す逆方向イタレーターを返します |
rend |
iterator end() |
マップの先頭を指す逆方向イタレーターを返します |
operator[] |
reference operator[](const key_type& key) |
keyを検索し、その値を指す値の参照を返します。 |
upper_bound |
iterator upper_bound(const key_type& key) |
keyより大きな要素(pair)の最初を指すイタレーターを返します。 存在しない場合は末尾を指すイタレーターを返します。 |
lower_bound |
iterator lower_bound(const key_type& key) |
key以上の要素(pair)の最後を指すイタレーターを返します。 存在しない場合は末尾を指すイタレーターを返します。 |
equal_range |
pair<iterator, iterator> equal_range(const key_type& key) |
このメンバ関数は、x.first == lower_bound(key) および x.second == upper_bound(key) とする反復子 x のペアを返します。 |
※value_typeはpair型を示します。
コンストラクタ
書 式 |
説 明 |
map(const Pred& comp = Pred(), const A& al = A()) 例) map<char, int> m1(); |
charからintを検索するmapを作成しm1とする |
map(const map& x) 例) map<char, int> m2(m1); |
コピーコンストラクタ m1と同じmapを作成し、m2とする |
map(const value_type* first, const value_type* last, const Pred& comp = Pred(), const A& al = A())) 例) map<char, int> m3(m1.begin(), m1.end()); |
m1の先頭から末尾までの要素からなるmapを作成し、m3とする |