1.map中的建構函式
map(); // 預設建構函式
map(const map& m) // 拷貝建構函式
map(iterator begin, iterator end ); //區間建構函式
2.資料插入
①insert(pair(key1,value1))
例: mapmapstudent;
mapstudent.insert(pair(1, 「student_one」));
mapstudent.insert(pair(2, 「student_two」));
mapstudent.insert(pair(3, 「student_three」));
②insert(map::value_type(key1,value1))
例:mapmapstudent;
mapstudent.insert(map::value_type (1, 「student_one」));
mapstudent.insert(map::value_type (2, 「student_two」));
mapstudent.insert(map::value_type (3, 「student_three」));
③使用插入,如果mymap中不存在鍵值為"student_one"元素,那麼就執行插入操作
例:mapmapstudent;
mapstudent[1] = 「student_one」;
mapstudent[2] = 「student_two」;
mapstudent[3] = 「student_three」;
判斷是否插入成功:
std::pairinsert( constvalue_type& value ); //這裡的返回值:bool表示插入是否成功、iterator返回插入的位置
例:pair::iterator, bool> insert_pair;
insert_pair = mapstudent.insert(map::value_type (1, 「student_one」));
我們通過pair的第二個變數來知道是否插入成功,它的第乙個變數返回的是乙個map的迭代器,如果插入成功的話insert_pair.second應該是true的,否則為false。
3.資料的遍歷
①使用迭代器遍歷
例:map::reverse_iterator iter;
for(iter = mapstudent.rbegin(); iter != mapstudent.rend(); iter++)
studentinfo, *pstudentinfo; //學生資訊
mapmapstudent;
方法一:
typedef struct tagstudentinfo
}studentinfo, *pstudentinfo; //學生資訊
方法二:
classs sort
};int main()
{//用學生資訊對映分數
mapmapstudent;
map函式列表
c++ maps是一種關聯式容器,包含「關鍵字/值」對
insert() 插入元素
erase() 刪除乙個元素
clear() 刪除所有元素
find() 查詢乙個元素
swap() 交換兩個map
begin() 返回指向map頭部的迭代器
end() 返回指向map末尾的迭代器
lower_bound() 返回鍵值》=給定元素的第乙個位置
upper_bound() 返回鍵值》給定元素的第乙個位置
rbegin() 返回乙個指向map尾部的逆向迭代器
rend() 返回乙個指向map頭部的逆向迭代器
empty() 如果map為空則返回true
max_size() 返回可以容納的最大元素個數
size() 返回map中元素的個數
count() 返回指定元素出現的次數
value_comp() 返回比較元素value的函式
key_comp() 返回比較元素key的函式
get_allocator() 返回map的配置器
equal_range() 返回特殊條目的迭代器對
STL中map的使用詳解
map本質上乙個平衡二叉樹 更準確地說是紅黑樹 那麼每個節點存放乙個資料,預設是key和value打包成乙個資料pair,以pair的形式存放在節點的,由此來看,pair裡面可以放任何資料,前提是pair必須可以比較大小,當然也可以自定義比較函式,而map的第三個引數就是指定自定義key的比較函式的...
STL中map用法詳解
map是stl的乙個關聯容器,它提供一對一 其中第乙個可以稱為關鍵字,每個關鍵字只能在 map中出現一次,第二個可能稱為該關鍵字的值 的資料處理能力,由於這個特性,它完成有可能在我們處理一對一資料的時候,在程式設計上提供快速通道。這裡說 下map內部資料的組織,map內部自建一顆紅黑樹 一種非嚴格意...
STL中map用法詳解
說明 如果你具備一定的c template知識,即使你沒有接觸過stl,這個文章你也應該可能較輕易的看懂。本人水平有限,不當之處,望大家輔正。一 map概述 map是stl的乙個關聯容器,它提供一對一 其中第乙個可以稱為關鍵字,每個關鍵字只能在map中出現一次,第二個可能稱為該關鍵字的值 的資料處理...