C map的基本操作和使用

2021-07-09 19:50:35 字數 2513 閱讀 9649

map是c++的乙個標準容器,它提供了很好一對一的關係,在一些程式中建立乙個map可以起到事半功倍的效果,總結了一些map基本簡單實用的操作!

1. map最基本的建構函式;

map物件是

模板類,需要關鍵字和儲存物件兩個模板引數:

mapmapstring; 

mapmapint;

mapmapstring; 

map< char ,string>mapchar;

mapmapchar; 

mapmapint;

2. map新增資料;

mapmaplive; 

三種插入方式:

1用insert方法插入pair物件:

maplive.insert(pair(1, 「one」));

2 用insert方法插入value_type物件:

maplive.insert(map::value_type (1, 「one」));

3 用陣列方式插入值:

enummap[1] = "one";

enummap[2] = "two";

1下標操作符給出了獲得乙個值的最簡單方法:

cstring tmp = enummap[2];

但是,只有當map中有這個鍵的例項時才對,否則會自動插入乙個例項,值為初始化值。 2

我們可以使用find()

和count()

方法來發現乙個鍵是否存在

查詢map中是否包含某個關鍵字條目用find()方法,傳入的引數是要查詢的key,在這裡需要提到的是begin()和end()兩個成員,分別代表map物件中第乙個條目和最後乙個條目,這兩個資料的型別是iterator.

int nfindkey = 2; //要查詢的key

//定義乙個條目變數(實際是指標)

udt_map_int_cstring::iterator it= enummap.find(nfindkey);

if(it == enummap.end())

else

通過map物件的方法獲取的iterator資料型別是乙個std::pair物件,包括兩個資料。

iterator->first 關鍵字(key)

iterator->second 儲存的資料(value)  //依據對map的定義來判斷first和second是關鍵字還是value.

1移除某個map中某個條目用erase()

該成員方法的定義如下:

1.iterator erase(iterator it); //通過乙個條目物件刪除

2.iterator erase(iterator first, iterator last); //刪除乙個範圍

3.size_type erase(const key& key); //通過關鍵字刪除

2清除所有的元素clear()

clear()就相當於 enummap.erase(enummap.begin(), enummap.end());

map中的swap不是乙個容器中的元素交換,而是兩個容器交換;

for example:

#include

#include

using namespace std;

int main( )

map中的元素是自動按key公升序排序,所以不能對map用sort函式:

for example:

#include

#include

using namespace std;

int main( )

the original map m1 is:

1 20

2 50

3 60

4 40

6 40

7 30

請按任意鍵繼續. . .

c++ maps是一種關聯式容器,包含「關鍵字/值」對

begin() 返回指向map頭部的迭代器

clear() 刪除所有元素

count() 返回指定元素出現的次數

empty() 如果map為空則返回true

end() 返回指向map末尾的迭代器

equal_range() 返回特殊條目的迭代器對

erase() 刪除乙個元素

find() 查詢乙個元素

get_allocator() 返回map的配置器

insert() 插入元素

key_comp() 返回比較元素key的函式

lower_bound() 返回鍵值》=給定元素的第乙個位置

max_size() 返回可以容納的最大元素個數

rbegin() 返回乙個指向map尾部的逆向迭代器

rend() 返回乙個指向map頭部的逆向迭代器

size() 返回map中元素的個數

swap() 交換兩個map

upper_bound() 返回鍵值》給定元素的第乙個位置

value_comp() 返回比較元素value的函式

部落格已搬:洪學林部落格

C map的基本操作和使用

map是c 的乙個標準容器,她提供了很好一對一的關係,在一些程式中建立乙個map可以起到事半功倍的效果,總結了一些map基本簡單實用的操作!1.map最基本的建構函式 mapmapstring mapmapint mapmapstring map char string mapchar mapmap...

C map的基本操作和使用

map是c 的乙個標準容器,她提供了很好一對一的關係,在一些程式中建立乙個map可以起到事半功倍的效果,總結了一些map基本簡單實用的操作!1.map最基本的建構函式 mapmapstring mapmapint mapmapstring map char string mapchar mapmap...

C map的基本操作和使用

map是c 的乙個標準容器,她提供了很好一對一的關係,在一些程式中建立乙個map可以起到事半功倍的效果,總結了一些map基本簡單實用的操作!1.map最基本的建構函式 mapmapstring mapmapint mapmapstring map char string mapchar mapmap...