C map的使用方法

2021-10-04 19:45:18 字數 2744 閱讀 1320

map是stl的乙個關聯容器,它提供一對一(其中第乙個可以稱為關鍵字每個關鍵字只能在map**現一次第二個可能稱為該關鍵字的值key — value)的資料 處理能力,由於這個特性,它完成有可能在我們處理一對一資料的時候,在程式設計上提供快速通道。這裡說下map內部資料的組織,map內部自建一顆紅黑樹(一 種非嚴格意義上的平衡二叉樹),這顆樹具有對資料自動排序的功能,所以在map內部所有的資料都是有序的,後邊我們會見識到有序的好處。同時,可以修改實值,而不能修改key

第一種:用insert函式插入pair資料

make_pair(x,y) 這個函式可以生成pair對,即 pair,作用是等同的。

#include

#include

#include

using

namespace std;

intmain()

第二種:用insert函式插入value_type資料

#include

#include

#include

using

namespace std;

intmain()

第三種:用陣列方式插入資料#include

#include

#include

using namespace std;

int main()

mapmapstudent;  

mapstudent[1] = "student_one";

mapstudent[2] = "student_two";

mapstudent[3] = "student_three";

map::iterator iter;

for(iter = mapstudent.begin(); iter != mapstudent.end(); iter++)

cout

當map中有這個關鍵字時,insert操作是插入資料不了的,但是用陣列方式就不同了,它可以覆蓋以前該關鍵字對 應的值。

第一種:用count函式來判定關鍵字是否出現,其缺點是無法定位資料出現位置,由於map的特性,一對一的對映關係,就決定了count函式的返回值只有兩個,要麼是0,要麼是1,出現的情況,當然是返回1了

第二種:用find函式來定位資料出現位置,它返回的乙個迭代器,當資料出現時,它返回資料所在位置的迭代器,如果map中沒有要查詢的資料,它返回的迭代器等於end函式返回的迭代器。

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

#include

#include

#include

using

namespace std;

intmain()

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提供一對一的hash,採用key value鍵值對,可以是任意型別 包括自定義型別 標頭檔案 include 定義乙個map物件 mapmapstudent 插入資料 陣列方式,若已存在鍵,會覆蓋 mapstudent 1 student one 插入資料 pair方式,若已存在鍵,插入失敗 ...

c map的使用方法

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

C map使用方法總結

目錄 1.概述 2.map的基本操作 2.1 插入操作 2.2 取值 2.3.容量查詢 2.4 刪除 2.5 查詢 2.6 使用舉例 3.map基本操作函式總結 map是c 標準模板庫 stl 中的一種關聯式容器。它的特性是,所有元素都會根據元素的鍵值自動被排序,即map的所有元素都是pair,同時...