C 中map的使用

2021-08-14 15:02:52 字數 1571 閱讀 1558

1.map 是什麼?

map表示鍵值對的對映。在現代程式語言中,是乙個很重要的資料結構。以下對c++中的map進行乙個簡單的介紹。

2.map 的主要操作

2.1 map的定義

mapma;

2.2 map的使用

···

ma[1]=

11;ma[2]=

22;ma[3]=

33;···

2.3 map的遍歷
for

(int i =

1;i<

4;i++

)

for

(map<

int,

int>

::iterator it = ma.

begin()

;it!=ma.

end(

);it++

)

使用遍歷器遍歷時,注意只支援++--操作,但是不支援+或者-操作。2.4 map的尋找

if

(ma.

find(1

)!=ma.

end())

3.簡單示例
#include

#include

#include

using namespace std;

intmain()

printf

("\n**********===\n");

for(

int i =

1;i<

4;i++

)printf

("\n");

for(map<

int,

int>

::iterator it = ma.

begin()

;it!=ma.

end(

);it++

)}

4.map高階

上面給出了一些map簡單的使用案例,下面我們探索一點兒map的高階內容。

4.1 map的key/value可以是結構體麼?

可以。簡單示例如下:

#include

#include

#include

#include

#include

using namespace std;

struct result

;int

main()

}

得到的執行結果如下:

注意這裡輸出map中value的方式。

C 中map的使用

map的特性是,所有元素都會根據元素的減值自動被排序。map的所有元素都是pair,同時擁有實值 value 和鍵值 key pair的第乙個元素會被視為鍵值,第二個元素會被視為實值。map不允許兩個元素擁有相同的鍵值。下面看一下中的pair定義 template struct pair pair ...

C 中map的使用

目錄 1.簡單的map 2.hash map unorder map 3.通過key找value 和 通過value找key begin 返回指向map頭部的迭代器 clear 刪除所有元素 count 返回指定元素出現的次數 empty 如果map為空則返回true end 返回指向map末尾的迭...

c 中map的使用

1.map的定義 mapmp 2.map容器內元素的訪問 通過下標訪問時需要先檢查key是否存在,不檢查的話會在map中新增 key,value 其中value是預設值,然後返回value 檢查key存在否可以用find key 或者mp.count key find key key存在時返回迭代器...