C++ map
- #include <map>
1,map的初始化
- map<char,int> map1; //空map
- map<char,int> map2(map1.begin(),map2.end()); // 取定范围初始化
- map<char,int> map3(map1); //复制 map1 的内容初始化
- map<char,int> second;
- second=map1; // second now contains map1's contents
- map1= map<char,int>(); // and map1 is now empty
例子:
- #include <iostream>
- #include <map>
- #include <string>
- using namespace std;
- int main ()
- {
- map<string,int> mymap;//字符串为key,int为value
- mymap["str1"] = 100;
- mymap["str2"] = 200;
- mymap["str3"] = 300;
- for (map<string,int>::iterator it=mymap.begin(); it!=mymap.end(); ++it)
- cout << it->first << " => " << it->second <<endl;
- return 0;
- }
2,迭代器
- for (std::map<char,int>::iterator it=mymap.begin(); it!=mymap.end(); ++it)
- std::cout << it->first << " => " << it->second << '\n';
3,容量 Capacity:
- mymap.empty() //判断是否为空
- mymap.size() //The number of elements in the container.
4, 访问元素 Element access:
- mymap['a']="11";
- cout <<mymap['a'] <<endl; //下标法
- mymap.at('a') = 10; //at()方法
5,修改Modifiers:
- insert()
- mymap.insert ( std::pair<char,int>('a',100) );
- std::map<char,int> anothermap;
- anothermap.insert(mymap.begin(),mymap.find('c')); //(range insertion)
- erase ()
- it=mymap.find('b');
- mymap.erase (it); // erasing by iterator
- mymap.erase ('c'); // erasing by key
- it=mymap.find ('e');
- mymap.erase ( it, mymap.end() ); // erasing by range
- map1.swap(map2); //交换内容,key, value类型相同,个数可以不同
- clear(); //清空元素
6,操作 Operations:
- find() //根据key 找元素
- it = mymap.find('b');
- mymap.find('a')->second
- mymap.count(k); //map中有键值等于k则返回1,否者返回0
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
2015-05-03 人生必看的20部正能量电影
2015-05-03 15个Linux Wget下载实例终极指南
2015-05-03 apt-get常用命令
2015-05-03 SCI完全攻略:从构思到发表
2015-05-03 10个治愈拖延症珍藏版心理技巧
2015-05-03 课题组人际关系相处问题