[C++] STL大家族之<map>(字典)容器(附洛谷)

map-目录

使用方法

头文件与声明定义

头文件是:

cpp 复制代码
#include <map>

我们这样声明一个字典:

cpp 复制代码
map</*key_type*/, /*value_type*/> /*map_name*/;
// 例子:
map<int, char> mp;

这里稍作解释:

  • key_type是你每个键值对中的键的数据类型
  • value_type是你每个键值对中的值的数据类型
  • map_name是你的map名称

注: 以下我们的后续讲解以声明为map<int, char> mp;的map为例.

基本操作

以下用代码块的形式写出了map的增删改查和其他操作示例, 解释在注释里:

cpp 复制代码
mp[1] = 'a';			// 添加一对键值对, 键为1, 值为'a'
mp[666] = 'b';			// 同上
cout << mp[1] << endl;	// 访问键为1的值, 应输出'a'
mp.erase(1);			// 删除键为1的元素
mp.clear()				// 清空容器
mp.count(3);			// 如果存在键为3的元素返回1, 否则返回0
mp.find(64);			// 如果存在键为64的元素, 则返回元素的迭代器, 否则返回mp.end()
mp.size();				// 返回map内元素个数
mp.empty();				// map空的话返回true, 否则返回false
相关推荐
踏着七彩祥云的小丑4 小时前
pytest——Mark标记
开发语言·python·pytest
Dream of maid4 小时前
Python12(网络编程)
开发语言·网络·php
W23035765735 小时前
经典算法:最长上升子序列(LIS)深度解析 C++ 实现
开发语言·c++·算法
.Ashy.5 小时前
2026.4.11 蓝桥杯软件类C/C++ G组山东省赛 小记
c语言·c++·蓝桥杯
Y4090015 小时前
【多线程】线程安全(1)
java·开发语言·jvm
不爱吃炸鸡柳5 小时前
Python入门第一课:零基础认识Python + 环境搭建 + 基础语法精讲
开发语言·python
minji...5 小时前
Linux 线程同步与互斥(三) 生产者消费者模型,基于阻塞队列的生产者消费者模型的代码实现
linux·运维·服务器·开发语言·网络·c++·算法
Dxy12393102166 小时前
Python基于BERT的上下文纠错详解
开发语言·python·bert
wjs20247 小时前
JavaScript 语句
开发语言