c 中map的使用

2021-10-09 18:20:25 字數 966 閱讀 4239

1. map的定義

mapmp;

2. map容器內元素的訪問

//通過下標訪問時需要先檢查key是否存在,不檢查的話會在map中新增(key,value),其中value是預設值,然後返回value   //檢查key存在否可以用find(key)或者mp.count(key)。find(key),key存在時返回迭代器,迭代器等於end()時表示不存在;mp.count(key),存在時返回1,否則返回0

mp['c']=

2;printf

("%d"

,mp[

'c']

);

//it->first來訪問key,it->second來訪問value;

for(map::iterator it=mp.begin();it!=mp.end();it++)

3. map常用函式

find(key)返回key的對映的迭代器

erase()可以刪除單個或乙個區間的所有元素

size() 獲得map中對映的個數

clear() 清空map中所有元素

empty() 判斷map是否為空

4. map中新增資料

mapmaplive;  

maplive.insert(pair(102,"aclive"));

maplive.insert(map::value_type(321,"hai"));

maplive[112]="april";//map中最簡單最常用的插入新增!

5. map中的排序問題

map中預設是以key的公升序排列,所以不能對map使用sort函式,如果需要排序則先放進vector中再排序。

bool cmp(const pair& a, const pair& b) 

int main()

C 中map的使用

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...

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末尾的迭...