[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
相关推荐
blasit9 小时前
笔记:Qt C++建立子线程做一个socket TCP常连接通信
c++·qt·tcp/ip
肆忆_1 天前
# 用 5 个问题学懂 C++ 虚函数(入门级)
c++
不想写代码的星星2 天前
虚函数表:C++ 多态背后的那个男人
c++
端平入洛3 天前
delete又未完全delete
c++
端平入洛4 天前
auto有时不auto
c++
郑州光合科技余经理5 天前
代码展示:PHP搭建海外版外卖系统源码解析
java·开发语言·前端·后端·系统架构·uni-app·php
feifeigo1235 天前
matlab画图工具
开发语言·matlab
dustcell.5 天前
haproxy七层代理
java·开发语言·前端
norlan_jame5 天前
C-PHY与D-PHY差异
c语言·开发语言
哇哈哈20215 天前
信号量和信号
linux·c++