具體的詳見**或者
// map的基本使用
#include
"pch.h"
#include
//map需要包含的標頭檔案
#include
using namespace std;
intmain()
printf
("*************************************\n");
//2、insert方法 value_type 形式
map_test.
insert
(map<
int, string>
::value_type (4,
"four"))
; map_test.
insert
(map<
int, string>
::value_type (5,
"five"))
; map_test.
insert
(map<
int, string>
::value_type (6,
"six"))
;printf
("*************************************\n");
for(
auto iter = map_test.
begin()
; iter != map_test.
end(
); iter++
)printf
("*************************************\n");
//3、陣列的形式
map_test[7]
="seven"
; map_test[8]
="eight"
; map_test[9]
="nine"
;printf
("*************************************\n");
for(
auto iter = map_test.
begin()
; iter != map_test.
end(
); iter++
)printf
("*************************************\n");
// 檢視insert方法是否成功
pairint, string>
::iterator, bool> insert_pair;
insert_pair = map_test.
insert
(pair<
int, string>(1
,"one"))
;if(insert_pair.second == true)
else
printf
("*************************************\n");
for(
auto iter = map_test.
begin()
; iter != map_test.
end(
); iter++
)printf
("*************************************\n");
insert_pair = map_test.
insert
(pair<
int, string>(1
,"one_repeat"))
;if(insert_pair.second == true)
else
printf
("*************************************\n");
for(
auto iter = map_test.
begin()
; iter != map_test.
end(
); iter++
)printf
("*************************************\n");
//通過陣列可以成功其value值
map_test[1]
="one_array"
;printf
("*************************************\n");
for(
auto iter = map_test.
begin()
; iter != map_test.
end(
); iter++
)printf
("*************************************\n");
//通過迭代器改變其value值
auto iter1 = map_test.
begin()
; iter1->second =
"one_iter"
;printf
("*************************************\n");
for(
auto iter = map_test.
begin()
; iter != map_test.
end(
); iter++
)printf
("*************************************\n");
// 利用map的內建函式檢視是否有該元素
auto iter2 = map_test.
find(1
);if(iter2 != map_test.
end())
else
//利用陣列下標直接訪問存在的元素
printf
(" %s %d %d \n"
,map_test[1]
.c_str()
,map_test[1]
.size()
,map_test[1]
.length()
);//利用陣列下標直接訪問不存在的元素
printf
(" %s %d %d \n"
,map_test[11]
.c_str()
,map_test[11]
.size()
,map_test[11]
.length()
);//刪除乙個元素
auto iter3 = map_test.
begin()
; map_test.
erase
(iter3)
;printf
("*************************************\n");
for(
auto iter = map_test.
begin()
; iter != map_test.
end(
); iter++
)printf
("*************************************\n");
//刪除存在的元素 返回值為 1
int n = map_test.
erase(2
);if(n ==1)
else
//刪除不存在的元素 返回值為 1
n = map_test.
erase(22
);if(n ==1)
else
printf
("*************************************\n");
for(
auto iter = map_test.
begin()
; iter != map_test.
end(
); iter++
)printf
("*************************************\n");
// 清空元素
#if 0
map_test.
erase
(map_test.
begin()
,map_test.
end())
;#else
map_test.
clear()
;#endif
printf
("*************************************\n");
for(
auto iter = map_test.
begin()
; iter != map_test.
end(
); iter++
)printf
("*************************************\n");
}
stl中map的基本用法
c maps是一種關聯式容器,包含 關鍵字 值 對 c maps 被用作儲存 關鍵字 值 對 語法 iterator begin begin 函式返回乙個迭代器指向map的第乙個元素。語法 void clear clear 函式刪除map中的所有元素。語法 size type count const...
STL中 Map 的基本用法
一 大致了解 map是stl中的乙個關聯容器,和python中的資料型別字典一樣,map 型別變數中的元素也是由鍵 值對組成,沒有重複的鍵。其底層實現是紅黑樹 非嚴格意義上的平衡二叉樹 二 基本用法 基本用法包括 宣告乙個map型別的變數 向宣告的map變數中插入元素 查詢map變數中的元素 刪除m...
C 中STL中的map用法詳解
stl 中map 用法詳解 一 map概述 map是stl的乙個關聯容器,它提供一對一 其中第乙個可以稱為關鍵字,每個關鍵字只能在map中出現一次,第二個可能稱為該關鍵字的值 的資料處理能力,由於這個特性,它完成有可能在我們處理一對一資料的時候,在程式設計上提供快速通道。這裡說下map內部資料的組織...