map的使用方法

2021-06-06 23:17:26 字數 2699 閱讀 1882

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

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

mapmapstring;         mapmapint;

mapmapstring;         map< char ,string>mapchar;

mapmapchar;            mapmapint;

2. map新增資料;

mapmaplive;  

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

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

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

3,map中元素的查詢:

find()函式返回乙個迭代器指向鍵值為key的元素,如果沒找到就返回指向map尾部的迭代器。        

map::iterator l_it;; 

l_it=maplive.find(112);

if(l_it==maplive.end())

cout<<"we do not find 112"<::iterator l_it;;

l_it=maplive.find(112);

if(l_it==maplive.end())

cout<<"we do not find 112"5,map中 swap的用法:

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

for example:

#include

#include

using namespace std;

int main( )

{map m1, m2, m3;

map ::iterator m1_iter;

m1.insert ( pair ( 1, 10 ) );

m1.insert ( pair ( 2, 20 ) );

m1.insert ( pair ( 3, 30 ) );

m2.insert ( pair ( 10, 100 ) );

m2.insert ( pair ( 20, 200 ) );

m3.insert ( pair ( 30, 300 ) );

cout << "the original map m1 is:";

for ( m1_iter = m1.begin( ); m1_iter != m1.end( ); m1_iter++ )

cout << " " << m1_iter->second;

cout   << "." << endl;

// this is the member function version of swap

//m2 is said to be the argument map; m1 the target map

m1.swap( m2 );

6.map的sort問題:

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

for example:

#include

#include

using namespace std;

int main( )

{map m1;

map ::iterator m1_iter;

m1.insert ( pair ( 1, 20 ) );

m1.insert ( pair ( 4, 40 ) );

m1.insert ( pair ( 3, 60 ) );

m1.insert ( pair ( 2, 50 ) );

m1.insert ( pair ( 6, 40 ) );

m1.insert ( pair ( 7, 30 ) );

cout << "the original map m1 is:"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的函式

map使用方法

map相對於set的區別,map具有鍵值和實值,所有元素根據鍵值自動排序,pair的第一元素被稱為鍵值,第二元素被稱為實值,map也是以紅黑樹為底層實現機制 map建構函式 mapmaptt map預設建構函式 map const map mp 拷貝建構函式 map賦值操作 map賦值操作map o...

map模組使用方法

map指令使用ngx http map module模組提供的。預設情況下,nginx有載入這個模組,除非人為的 without http map module。ngx http map module模組可以建立變數,這些變數的值與另外的變數值相關聯。允許分類或者同時對映多個值到多個不同值並儲存到乙...

C STL之map的使用方法

map 對映 經過排序了的二元組的集合,map中的每個元素都是由兩個值組成,其中的key 鍵值,乙個map中的鍵值必須是唯一的 是在排序或搜尋時使用,它的值可以在容器中重新獲取 而另乙個值是該元素關聯的數值。比如,除了可以ar 43 overripe 這樣找到乙個資料,map還可以通過ar bana...