当前位置:网站首页>STL教程8-map
STL教程8-map
2022-07-03 10:45:00 【贪睡的蜗牛】
map
map相对于set区别,map具有键值和实值,所有元素根据键值自动排序。pair的第一元素被称为键值,第二元素被称为实值。map也是以红黑树为底层实现机制。
map四种插入方式
map<int, int> mymap;//声明map,第一个参数key类型,第二个参数value类型
mymap.insert(pair<int, int>(10, 10));//第一种插入方式
mymap.insert(make_pair(20, 20));//第二种插入方式
mymap.insert(map<int, int>::value_type(30, 30));//第三种
mymap[40] = 40;//第四种
//打印
for (map<int, int>::iterator it = mymap.begin(); it != mymap.end(); it++)
{
//*it取出来的是pair
cout << "key:" << (*it).first << "value:" << it->second << endl;
}
注意上面第四种插入方式,如果没有插入访问,比如cout打印mymap[40],这时候也会插入,由于值类型是int,因此会插入0
添加自定义类型
这里添加一个类
class MyKey
{
public:
MyKey(int index, int id)
{
this->mIndex = index;
this->mID = id;
}
public:
int mIndex;
int mID;
};
定义比较类型
struct mycompare
{
bool operator()(const MyKey& key1, const MyKey& key2)const
{
return key1.mIndex > key2.mIndex;
}
};
添加元素
map<MyKey, int, mycompare> mymap;//自动排序,要告诉他怎么排序
mymap.insert(make_pair(MyKey(1, 2), 10));
mymap.insert(make_pair(MyKey(4, 5), 20));
打印元素
for (auto it = mymap.begin(); it != mymap.end(); it++)
{
cout << it->first.mIndex << ":" << it->first.mID << "=" << it->second << endl;
}
边栏推荐
- Gut | Yu Jun group of the Chinese University of Hong Kong revealed that smoking changes intestinal flora and promotes colorectal cancer (do not smoke)
- The R language uses the hist function in the native package (basic import package, graphics) to visualize the histogram plot
- FL Studio 20无限试用版水果编曲下载
- FL Studio 20 unlimited trial fruit arranger Download
- C语言日志库zlog基本使用
- C语言二维数组
- Execute kubectl on Tencent cloud container service node
- 如何成为一名高级数字 IC 设计工程师(1-4)Verilog 编码语法篇:表达式
- 基于I2C协议的驱动开发
- Gut | 香港中文大学于君组揭示吸烟改变肠道菌群并促进结直肠癌(不要吸烟)
猜你喜欢
高精度室内定位技术,在智慧工厂安全管理的应用
面試題總結(2) IO模型,集合,NIO 原理,緩存穿透,擊穿雪崩
多维度监控:智能监控的数据基础
Cadence background color setting
uniapp scroll view 解决高度自适应、弹框滚动穿透等问题。
AI模型看看视频,就学会了玩《我的世界》:砍树、造箱子、制作石镐样样不差...
用了这么久线程池,你真的知道如何合理配置线程数吗?
Abandon the Internet after 00: don't want to enter a big factory after graduation, but go to the most fashionable Web3
Software testing weekly (issue 78): the more confident you are about the future, the more patient you are about the present.
Arctangent entropy: the latest SCI paper in July 2022
随机推荐
Repo ~ common commands
How to become a senior digital IC Design Engineer (1-3) Verilog coding syntax: Verilog behavior level, register transfer level, gate level (abstract level)
如何成为一名高级数字 IC 设计工程师(1-4)Verilog 编码语法篇:表达式
Excel表格转到Word中,表格不超边缘纸张范围
Stm32hal library upgrades firmware based on flash analog U disk (detailed explanation)
Numpy np. Max and np Maximum implements the relu function
Event preview | the live broadcast industry "rolled in" to drive new data growth points with product power
Incremental database backup - DB incr DB full
(2) Base
Phpcms prompt message page Jump showmessage
ASP. Net hotel management system
Some common terms
[vtk] interpretation of source code comments of vtkwindowedsincpolydatafilter
One hot code
抓包整理外篇fiddler———— 会话栏与过滤器[二]
phpcms 提示信息页面跳转showmessage
Gut | 香港中文大学于君组揭示吸烟改变肠道菌群并促进结直肠癌(不要吸烟)
[VTK] vtkWindowedSincPolyDataFilter 源码注释解读
Cadence background color setting
phpcms 提示信息頁面跳轉showmessage