map的常見用法詳解

2021-10-19 19:56:19 字數 1528 閱讀 2271

map可以將任何基本型別對映到任何基本型別(包括stl容器)

標頭檔案

#include

map mp;	第乙個是鍵的型別,第二個是值的型別

如果是字串對映整型 那麼必須使用string而不是char

通過下標訪問

map<

char

,int

> mp;

mp['c']=

3;cout << mp[

'c']

;

通過迭代器訪問

map可以使用it -> first來訪問it -> second來訪問,且map會以鍵從小到大自動排序

map<

char

,int

> mp;

mp['m']=20

; mp[

'r']=30

; mp[

'a']=40

;for

(map<

char

,int

>

::iterator it = mp.

begin()

; it != mp.

end(

); it++

) cout << it -

> first <<

" "<< it -

> second << endl;

輸出

a 40

m 20

r 30

find

(key) 返回鍵位key的對映的迭代器

例:map<

char

,int

>

::iterator it = mp.

find

('r');

erase

(x) 若x為迭代器或鍵,則是刪除單個元素

例:mp.

erase

(it)

;erase

(first,last) 刪除區間內的所有元素,first和last為迭代器,左閉右開區間

例:map<

char

,int

>

::iterator it = mp.

find

('a'

), at = mp.

find

('c');

mp.erase

(it,at)

; 刪除從it到at之前的所有元素

size

() map中對映的對數

clear

() 用來清空map中的元素

map用法詳解

迭代器用法 mapm 第乙個為鍵,第二個為值 for int i 10 i 0 i 這裡是按從大到小的順序,但是迭代器是按從小到大的順序輸出 if i 2 0 因為map自帶按鍵從小到大排序 m i 1 map iterator iter for iter m.begin iter m.end it...

C 中的map常見用法

map是stl的乙個關聯容器,它提供一對一 其中第乙個可以稱為關鍵字,每個關鍵字只能在map中出現一次,第二個可能稱為該關鍵字的值 的資料 處理能力,由於這個特性,它完成有可能在我們處理一對一資料的時候,在程式設計上提供快速通道。這裡說下map內部資料的組織,map內部自建一顆紅黑樹 一 種非嚴格意...

C 的Map常見用法總結

map是stl的非常重要的關聯容器,其底層由紅黑樹實現,是一種key value的模式。標頭檔案和定義 include typedef mapmy map 第一種定義方式 模板定義 my map mmap 這兩種定義方法均可 mapmap 第二種定義方式 直接定義 迭代器和遍歷 map iterat...