进阶篇_map容器(保存键值对)
来源:互联网 发布:php手册中文版下载 编辑:程序博客网 时间:2024/05/21 09:08
1. 三种向map容器插入数据对的方法(等效)
map<int, Employee> mapEmployee;Employee emp1;mapEmployee.insert(pair<int, Employee>(1, emp1)); //法一插入:使用pair建立员工号1和员工对象emp1的映射关系,并插入map容器中 mapEmployee.insert(map<int, Employee>::value_type(1, emp1)); //法二插入:使用value_type类型实现数据的插入 mapEmployee[1983] = emp1; //法三插入:向map容器中插入一个数据对(1983, emp1)
2. 根据键找到对应的值
a. 通过迭代器输出数据对的键和值(遍历):
for(map<int, Employee>::iterator it; it!=mapEmployee.end(); ++it){cout<<it->first<<endl; //通过迭代器输出数据对的键和值cout<<it->second.getname()<<endl; }b.通过 map容器的find()函数查找某一个键(也通过迭代器,这种方式用的更多):
int findkey = 1; //定义要查找的键map<int, Employee>::iterator it = mapEmployee.find(findkey);cout<<it->first<<" "<<it->second.getname()<<endl;
3. 访问某个范围的数据对
int fromkey = 1;int tokey = 1000; //定义键的范围 map<int, Employee>::iterator itfrom = mapEmployee.lower_bound(fromkey); map<int, Employee>::iterator itto = mapEmployee.upper_bound(tokey);//用迭代器表示起始位置和终止位置for(map<int, Employee>::iterator it = itfrom; it!=itto; ++it){cout<<it->first<<endl; //输出范围内的所有数据} mapEmployee.erase(itfrom, itto);//删除范围内的所有数据以上代码中,分别使用了lower_bound()与upper_bound()函数来获得指向这个范围的起始位置和终止位置的迭代器
0 0
- 进阶篇_map容器(保存键值对)
- C#键值对容器
- C#键值对容器
- c#键值对容器
- 6.1 保存键值对
- android键值对保存
- 保存键值对
- Training--保存数据(1)-- 保存键值对集合
- android保存键值对数据
- Android的SharedPreferences(首选项)保存键值对
- C++ map键值对容器demo
- 保存数据 之 键值对的设置
- 小数据键值对的保存方式
- 113_容器_数据存储练习_Map保存表记录
- 安卓训练-开始-保存数据-保存键值对集合
- [c++ primer] 关联容器_map
- 【Android 一般进阶】固定JSONObject.toString()键值对顺序
- 【Android 一般进阶】固定JSONObject.toString()键值对顺序
- 强化学习系列<4>DQN
- 图文笔记,带你走进《未来简史》(6-10)
- 浅谈 MVP in Android
- 基于networkx的《人民的名义》人物关系图
- 设备树学习之(十二)LCD驱动
- 进阶篇_map容器(保存键值对)
- 深度学习中的可视化
- 使用User-Agent防止HttpClient发送http请求时403 Forbidden和安全拦截
- Glide获取缓存大小以及清除缓存
- Python 基础 —— 生成器 generator
- Android状态栏微技巧,带你真正理解沉浸式模式
- jqueryValidator
- plsql创建job执行定时任务
- 17.5.3第一天—netty实现服务端与客户端的通讯,并且获取服务端的cpu,内存等性能