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