//map容器中所有元素都是pair
//pair的第一个元素为key(赋值),起到索引作用,第二个元素为value(实值)
//所有元素都会根据元素的键值自动排序
//本质:map/multimap属于关联式容器,底层结构使用二叉树实现
//优点:
//可以根据key值快速找到value值
//map与multimap区别:
//map不允许容器中有重复key
//multimap允许容器中有重复key值元素
#include<iostream>
#include<map>
using namespace std;
void printMap(const map<int,int>& m) {
for (map<int,int>::const_iterator it = m.begin(); it != m.end(); it++) {
//这里获取不可以单纯*it,因为有两个值
cout << "key = " << (*it).first << "value = " << it->second << endl;
}
cout << endl;
}
void test01() {
map<int,int>m;
m.insert(pair<int, int>(1, 10));
m.insert(pair<int, int>(2, 20));
m.insert(pair<int, int>(4, 30));
m.insert(pair<int, int>(3, 40));
//会按key值自动排序
printMap(m);
//拷贝构造
map<int,int>m2(m);
printMap(m2);
//赋值
map<int,int>m3;
m3 = m2;
printMap(m3);
}
int main() {
test01();
}
c++笔记 STL map容器赋值和构造
最新推荐文章于 2024-07-05 21:53:13 发布
本文介绍了C++标准库中的map和multimap容器,它们是关联式容器,底层基于二叉树实现。map不允许重复键值,而multimap则允许。示例展示了如何插入元素、打印元素以及进行拷贝构造和赋值操作。map容器的优势在于能快速通过键值查找对应的值,并自动排序键值。
摘要由CSDN通过智能技术生成