STL系列:关联容器的操作
在C++ 中定义了几种类型用来表示容器关键字和值的类型。
key_type mapped_type value_type
对于set,由于保存的值就是关键字,所以,key_type和value_type是一样的。set的迭代器是const的!
对于set,find调用返回的是一个迭代器,如果我们所给定的关键字在set中的时候,迭代器就指向该关键字,否则,find返回尾后迭代器。
在一个map中,元素是键值对,即每个元素就是一个pair对象。值得注意的是,key_type是关键字类型,value_type是pair类型,
mapped_type才是关键字关联的值的类型!
map<int,string>::key_type v //int
map<int,string>::value_type v1 //pair<int,string>
map<int,string>::mapped_type v2 //stringset<string>::key_type v3 //string
set<string>::value_type v4 //string
关联容器的查找
对于有序关联容器 map set
map: 下标或者find
map<string,int>mapp;
mapp["one"] = 1;
cout<<mapp["one"]<<endl;
set:
set和map一样,find调用返回的是一个迭代器,如果我们所给定的关键字在set/map中的时候,迭代器就指向该关键字,否则,find返回尾后迭代器。
if(mapp.find("one") == mapp.end())cout<<"one is not found !"<<endl;
multimap或者multiset
调用find 返回的是该关键字指向的第一个元素(一个关键字可能对应于很多的元素值),可以遍历这些元素值,全部打印输出。
multimap<string,string>authors;
/*导入数据*/
string search_item("yanghang");
auto entries = authors.count(search_item);
auto iter = authors.find(search_item);
while(entries)
{cout<<iter->second<<endl;++iter;--entries;
}
STL系列:关联容器的操作相关推荐
- C++|STL学习笔记-对STL中关联容器map的进一步认识
关联容器map key + value 的值 关联容器 = 有序容器(红黑树) + 无序容器(散列表) + hash_map 有序容器中: map的键值是不允许重复的 multimap的键值是允许重复 ...
- 【C++ Primer 第11章】2. 关联容器操作
练习答案 一.访问元素 关联容器额外类型别名 key_type 此容器类型的关键字类型 mapped_type 每个关键字关联的类型,只 适用于map mapped_type 对于set,与key_ ...
- 《C++ Primer 5th》笔记(11 / 19):关联容器
文章目录 使用关联容器 使用map 使用set 关联容器概述 定义关联容器 初始化multimap 或 multiset 关键字类型的要求 有序容器的关键字类型 使用关键字类型的比较函数 pair类型 ...
- C++ 11 特性:关联容器map、set的使用
参考文献<C++ Primer> 一.关联容器概述 1.1 关联容器的概念 关联容器支持高效的查找与访问,主要的关联容器为map与set这两个.其中map主要提供的是键-值的操作,比如字典 ...
- c++关联容器的容器操作(和顺序容器都支持的操作)详细解释,基础于c++primer 5th 表 9.2 (持续更新)
关联容器和顺序容器都是容器,所以都支持容器操作.就是表格9.2所示的操作.以下以map为例测试表格中的操作是否满足关联容器. 1.类型别名: #include <iostream> #in ...
- 我对STL的一些看法(五)初识关联容器
3关联容器 pair类型 这个是一个简单的标准库类型,该类型在utility头文件中定义,我们来看看他主要的操作: pair<T1 ,T2> p1; 创建一个空的pair对象 pa ...
- C++primer第十一章 关联容器 11.3关联容器操作 11.4 无序容器
11.3关联容器操作 除了表9.2(第295页)中列出的类型,关联容器还定义了表11.3中列出的类型.这些类型表示容器关键字和值的类型. 对于set类型,key_type和value type是一样的 ...
- STL 容器和迭代器连载6_顺序容器的操作3
2019独角兽企业重金招聘Python工程师标准>>> /*- ========================================================== ...
- C++关联容器,STL关联容器
关联容器内部的元素都是排好序的,有以下四种. set:排好序的集合,不允许有相同元素.multiset:排好序的集合,允许有相同元素.map:每个元素都分为关键字和值两部分,容器中的元素是按关键字排序 ...
最新文章
- python作业高级FTP(第八周)
- Postgres和Oracle与Hibernate的兼容性
- 行为扩展以及插件机制
- [转]android 获取 imei号码
- java bio例子_传统的BIO
- self、 superclass 、 super的区别
- QT的QWebEngineView内存泄漏
- Excel绘制斜线表头
- flashfxp用什么协议连接服务器,flashfxp怎么连接,flashfxp怎么连接,具体的连接方法...
- InstallShield可靠的 Windows 安装程序
- 获取iframe里面的数据
- 保研夏令营、考研复试、出国时个人陈述模板与撰写注意事项
- RTX Excption integer divided by zero at loc (proc= thread=)Process image has been *unloaded
- 【无标题】C++输入两个坐标显示出输入的坐标以及均值
- 实木地板被机器人弄成坑_钱花光哭成泪人,28个让人撕心裂肺装修坑,不注意新房就会被毁!...
- 教师计算机培训考勤表,之江汇平台的使用-信息技术培训
- package,source folder,folder
- E - Bishop 2
- C++ 格式化地输出乘法口诀表,要求每列左对齐
- 东亚银行领千万级罚单、“十四五”数字经济发展规划发布、数百万路由器受漏洞影响|网络安全周报