map这个小妖精(*/ω\*)
1. map是虾米咩
redis晓得咩,就是那个key-value结构的数据库,map这家伙其实就是key-value结构的容器。容器是虾米咩,还好之前看过有关的一丁点,晓得C++里有这个一种类存在,它的名字就叫做容~器~类~~~网上说,容器就是用来存储数据的咩。map是标准STL关联容器,反正有概念就好得了咩,不必太纠结了o( ̄ヘ ̄o#)
2. 它是谁家小妖精咩
来来来,让俺们看看,这小妖精的头文件是哪个咩
#include
既然是map,当然是map家的,有木有猜到咩哈哈哈哈
3. 小妖精长什么样子咩
map<类型1, 类型2> 变量名称
比如酱紫咩
map key_value;
4. 小妖精有虾米本领咩
4.1 赋值
map变量有了,俺要给它赋值咩,肿么办呢
听说map有个叫做insert的方法阔以插入数据,插插插
噫,有种污了的错觉绝不是俺的错(*/ω\*),除了使用insert外当然可以它还可以像数组那样通过下标赋值,比如酱紫:map[key] = value
下面是例子咩
#include #include #include
4.2 iterator
cplusplus说map家的成员变量有酱酱酿酿的,但俺不认识,俺只认识iterator,所以就说说iterator咩~
iterator这家伙有两个成员变量,一个叫first,存储map的key,一个叫second,存储map的value。
而且使用iterator就阔以遍历map晓得咩,就像酱紫滴
#include #include #include
4.3 查找
俺啾一下扔了两个数据进map里了,可俺想找到这两个数据肿么办哦QAQ,因为map是key-value结构,当然是通过key来寻找了,map有个小触手叫做find~find~哟
调用find方法,会返回iterator。
如果find木有找到,则iterator等于map.end(),不要在这个时候试图打印iterator的key和value,因为会发生段错误,虽然俺知道会是这个结果,但俺还是闲得去尝试了%>_<%
#include #include #include
4.4 删除
因为作死去打印不存在的key和value,俺如愿以偿(才木有哼哼)地dump了,所以俺很生气后果很严重,俺要把插进去的数据揪出来扔掉T_T
删除数据阔以用erase,清空数据阔以用clear
#include #include #include
噫,又写了一堆废话,不晓得未来的俺看到后会不会有种想掐死俺的冲动咩哈哈哈