map表的操作一般是根據鍵值key進行操作,也可以用value值進行操作。不過建議用鍵值key操作,方便簡單。另外,還有一種資料結構叫做集合set,集合只有乙個鍵值key,同時key也是value。
注:1、由於寫的是一些簡單的測試程式,所以以下**的邏輯並不完整,函式的返回結果並未處理,另外函式實現的時候,函式的if,else分支也並未處理,使用時需要稍加注意。
2、以上提到的另外一種資料結構集合set的操作和map表類似,甚至可以說是照搬,只不過set只有鍵值key(同時也是value值)。
mapstruct.h
1#pragma once
2 #include 3
4class
mapstruct
5;
mapstruct.cpp
1 #include 2 #include "mapstruct.h"3
4 mapstruct::mapstruct(void)5
789 mapstruct::~mapstruct(void)10
1213
void
mapstruct::mapinit()
142324}
2526
bool mapstruct::mapinsert(int num, std::string&sinsertstring)
2732
33bool mapstruct::mapdelete(int
num)
3442
43 std::cout<<"
刪除成功
"<44maplist.erase(ptr);
4546
return
true;47
}48bool mapstruct::mapfind(int
num)
4958
59 std::string _string = ptr->second;
60 std::cout<<"
查詢到"
<<_string.c_str()<61return
true;62
}6364void
6572 }
main.cpp
1 #include 2 #include "mapstruct.h"3
4int
main()
5
注:3、 map的基本操作函式:
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的基本操作 include include include include using namespace std mulimap與map的區別 1 mulimap允許key冗餘,但是map不允許key冗餘 2 mulimap沒有operator,但是map有 寫一下pair的具體結構是怎樣的...
map容器的基本操作
僅供了解 c 中map容器提供乙個鍵值對容器,map與multimap差別僅僅在於multiple允許乙個鍵對應多個值。一 map的說明 1 標頭檔案 include 2 定義 mapmy map 或者是typedef mapmy map my map my map 3 插入資料 1 my map ...
scala的map基本操作
map基本操作 基本操作 獲取值 map key 獲取所有key map.keys 獲取所有value map.values 遍歷map集合 getorelse 增加key,value對 刪除key 示例 定義乙個對映,包含以下學生姓名和年齡資料 scala zhangsan 30 lisi 40 ...