《C++ STL编程实战》读书笔记(四)
map容器的介绍:
1. 关联容器的概念
2. map容器的概念及它的组织方式
3. map容器的类型及其功能
4. map容器提供的函数
5. pair的概念及其用法
6. tuple的概念及其用法
map的容器有4种,每一种都是由类模板定义的。
map容器的元素是pair<const& K,T>类型的对象,这种对象分装了一个T类型的对象,和一个与其关联的K类型的键。pair元素中的键是const,因为修改键会扰乱容器中的元素的顺序
utility头文件中,定义了make_pair<T1,T2>()函数模板。
map<string, size_t>people {make_pair("Ann",25),make_pair("Bill",46),make_pair("Jack",32),make_pair("Jill",20)};
pair<T1,T2>的公共成员变量first,esecond分别保存了T1和T2类型的变量
//用一个已有的容器,赋值令一个容器
//method1
map<string,size_t> personnel{people};//method2
map<string,size_t> personnel{begin(people),end(people)};
#include <iostream>
#include <map>
#include <iomanip>
#include <string>using namespace std;int main()
{/*成员函数inser()会返回一个pair<iterator,bool>对象。对象的成员first是一个迭代器。它会指向插入的元素,或者指向阻止插入的元素。对象的成员变量second是返回对象。插入成功是true,反之是false访问插入pair的成员变量first的表达式是ret_pr.first->firstret_pr的成员变量first是一个指向pai的迭代器,所以可以使用->操作符,来访问它的成员变量first*/map<string, size_t>people {make_pair("Ann",25),make_pair("Bill",46),make_pair("Jack",32),make_pair("Jill",20)};auto pr = make_pair("Fred",22);auto ret_pr = people.insert(pr);ret_pr.first--;cout<< ret_pr.first->first << " "<<ret_pr.first->second<<" "<< ret_pr.second<<endl;cout<<"Iteration begins:"<<endl;for(const auto& p:people)cout<<setw(10)<<left<<p.first<<" "<<p.second<<endl;return 0;
}/*resultBill 46 1
Iteration begins:
Ann 25
Bill 46
Fred 22
Jack 32
Jill 20*/
《C++ STL编程实战》读书笔记(四)相关推荐
- 《淘宝技术这十年》读书笔记 (四). 分布式时代和中间件
前面两篇文章介绍了淘宝的发展历程.Java时代的变迁和淘宝开始创新技术: <淘宝技术这十年>读书笔记 (一).淘宝网技术简介及来源 &l ...
- 视觉SLAM十四讲读书笔记(5)P40-P52
目录 Q:什么是eigen Q:正交矩阵的定义和性质 Q:什么是特殊正交群 Q:什么叫齐次坐标 Q:什么是特殊欧氏群 Q:什么是运算符重载 Q:什么是g2o Q:什么是sophus Q:什么是eige ...
- 视觉SLAM十四讲读书笔记(2)P10-P27
目录 Q:一个视觉SLAM框架由哪几个模块组成,各模块的任务又是什么 Q:什么是机器人的自主运动能力 Q:什么是机器人的感知 Q:什么是激光雷达 Q:什么是增强现实 Q:什么是IMU单元 ...
- 视觉SLAM十四讲读书笔记(3)P27-P31
目录 Q:介绍一些常见的Linux系统 Q:Kinect是什么 Q:什么是编译器 Q:GNU是什么 Q:GNUME桌面环境是什么 Q:gedit是什么 Q:unix和Linux有什么关系和不同 Q:什 ...
- 【读书笔记】《视觉SLAM十四讲(高翔著)》 第13讲
文章目录 工程文件一:dense_monocular(单目稠密地图) 工程文件二:dense_RGBD(点云地图 & 八叉树地图) 本博客的内容是本章程序编译运行方法,记录调通本章程序的过程. ...
- 《视觉SLAM十四讲 第二版》笔记及课后习题(第七讲)
读书笔记:视觉里程计1 之前的内容,介绍了运动方程和观测方程的具体形式,并讲解了以非线性优化为主的求解方法.从本讲开始,我们结束了基础知识的铺垫,开始步入正题:按照第二讲的内容,分别介绍视觉里程计.优 ...
- 视觉SLAM总结——视觉SLAM十四讲笔记整理
视觉SLAM总结--视觉SLAM十四讲笔记整理 说明 基础知识点 1. 特征提取.特征匹配 (1)Harris (2)SIFT (3)SUFT (4)ORB (5)特征匹配 2. 2D-2D:对极约束 ...
- 视觉SLAM十四讲学习笔记-第七讲-视觉里程计-三角测量和实践
专栏汇总 视觉SLAM十四讲学习笔记-第一讲_goldqiu的博客-CSDN博客 视觉SLAM十四讲学习笔记-第二讲-初识SLAM_goldqiu的博客-CSDN博客 视觉SLAM十四讲学习笔记-第 ...
- 视觉SLAM十四讲学习笔记-第七讲-视觉里程计-对极几何和对极约束、本质矩阵、基础矩阵
专栏系列文章如下: 专栏汇总 视觉SLAM十四讲学习笔记-第一讲_goldqiu的博客-CSDN博客 视觉SLAM十四讲学习笔记-第二讲-初识SLAM_goldqiu的博客-CSDN博客 视觉SLA ...
- 视觉SLAM十四讲学习笔记-第六讲学习笔记总结(1)---非线性优化原理
第六讲学习笔记如下: 视觉SLAM十四讲学习笔记-第六讲-非线性优化的状态估计问题_goldqiu的博客-CSDN博客 视觉SLAM十四讲学习笔记-第六讲-非线性优化的非线性最小二乘问题_ ...
最新文章
- PDGAN: A Novel Poisoning Defense Method in Federated Learning Using Generative Adversarial Network笔记
- 苹果电脑无法用普通域用户加入域,用域管理员却可以,怎么破!?
- [Swift通天遁地]七、数据与安全-(12)使用Instruments Leaks工具检测内存泄露
- Oracle BI11启动失败
- Java多线程设计要点
- [转]paint,update和repaint三种awt方法
- HDU Fibonacci
- 用txt写的mysql数据库_TXT怎么导入mySQL数据库
- GooFlow有后门代码
- uni-app地址四级联动
- SQL 遇到以零作除数错误——用NULLIF()函数处理为0的分母
- 海思Hi3531DV100开发环境搭建
- MySQL讲义第49讲——select 查询之查询练习(七):使用多种方法添加排名
- CAD中DWF(DXF)数据在GIS上的应用
- R语言和RStudio开发环境的下载与安装
- 【No JSON object could be decoded】问题解决
- 某A的工口游戏创作者体验记(上)
- Esxi安装iStoreOS
- connect to maven.google.com:443 connect timed out 连接不上的解决办法
- Utility AI 一种基于权重的游戏AI