当前位置: 首页 > news >正文

坦桑尼亚网站域名后缀照片编辑器手机版

坦桑尼亚网站域名后缀,照片编辑器手机版,河南建设信息网一体化,网线制作公开课C标准库中的map是一种关联容器&#xff0c;它提供了键值对的映射关系。每个键值对中的键都是唯一的&#xff0c;通过键可以访问对应的值。 map基本操作 插入元素&#xff1a; 使用insert函数插入元素&#xff0c;该函数有两种形式&#xff1a; // 插入一个pair<const Ke…

C++标准库中的map是一种关联容器,它提供了键值对的映射关系。每个键值对中的键都是唯一的,通过键可以访问对应的值。

map基本操作

  1. 插入元素:

使用insert函数插入元素,该函数有两种形式:

// 插入一个pair<const Key, T>对象
map<int, string> mp;
mp.insert(pair<int, string>(1, "one"));// 插入多个pair<const Key, T>对象
map<int, string> mp;
mp.insert(make_pair(2, "two"));
mp.insert(make_pair(3, "three"));
  1. 删除元素:

使用erase函数删除元素,该函数有两种形式:

// 删除键为key的元素
mp.erase(key);// 删除指向位置pos的元素,pos指向的元素会被删除,并返回指向下一个元素的迭代器
auto it = mp.begin();
for(; it != mp.end(); ++it) {if(it->first == key) {it = mp.erase(it);}
}
  1. 查找元素:

使用find函数查找元素,该函数返回一个迭代器,指向找到的元素或指向容器的end位置。有三种形式:

// 查找键为key的元素,返回指向该元素的迭代器,如果找不到返回end()
auto it = mp.find(key);
if(it != mp.end()) {// 找到了元素,使用*it访问该元素的值string value = it->second;
} else {// 没有找到元素
}// 查找键值大于等于key的第一个元素,返回指向该元素的迭代器,如果找不到返回end()
auto it = mp.upper_bound(key);
if(it != mp.end()) {// 找到了元素,使用*it访问该元素的值string value = it->second;
} else {// 没有找到元素
}// 查找键值小于等于key的第一个元素,返回指向该元素的迭代器,如果找不到返回end()
auto it = mp.lower_bound(key);
if(it != mp.end()) {// 找到了元素,使用*it访问该元素的值string value = it->second;
} else {// 没有找到元素
}

map特性

  1. 提供一个映射关系,元素以键值对(key-value)的形式存储,能够根据key快速查找value。
  2. map中的键值对以Entry类型的对象实例形式存在。
  3. 键(key)在map中不可重复,但值(value)可以。
  4. 每个键最多只能映射一个值。
  5. map接口提供了分别返回key值集合、value值集合以及Entry(键值对)集合的方法。
  6. map支持泛型,形式如:Map<Key, T>。
  7. map底层在jdk1.8之前主要是数组和链表组成,jdk1.8之后新增了红黑树的特性。
  8. map是线程不安全的,如果需要在线程中操作,可以使用ConcurrentHashMap来操作。

应用举例

#include <iostream>
#include <map>
#include <string>int main() {std::map<std::string, int> ages;// 插入数据ages["Alice"] = 25;ages["Bob"] = 30;ages["Charlie"] = 35;// 删除数据ages.erase("Bob");// 查找数据std::string name = "Bob";if (ages.find(name) == ages.end()) {std::cout << name << " is not found in the map." << std::endl;} else {std::cout << name << " is " << ages[name] << " years old." << std::endl;}// 遍历数据for (const auto& pair : ages) {std::cout << pair.first << " is " << pair.second << " years old." << std::endl;}return 0;
}

这个例子中,我们首先创建了一个map对象ages,并向其中插入了三个键值对。然后,我们使用erase函数删除了键为"Bob"的键值对。接着,我们使用find函数查找关键字"Bob",如果找不到,则输出"Bob未找到",否则输出"Bob的年龄是xxx"。最后,我们使用循环遍历整个map,并输出每个人的名字和年龄。

http://www.yayakq.cn/news/180512/

相关文章:

  • 博物馆网站建设方案网站的ppt方案怎么做
  • dedecms下载站怎么完整下载网站模板
  • 怎么有自己的网站软件工程考研方向有哪些
  • 手机网站开发工具 2018门户网站建设经验总结报告
  • 制作一个网站首页怎么做微信小程序
  • 网站建设工单系统护语配资网站建设多少钱
  • html5 制作手机网站页游排行榜前十名网络游戏
  • 网站有了订单邮箱提醒代码鲜花网站建设的项目介绍
  • 做网站封面素材图东莞企业网站建立报价
  • 网易做网站wap网站开发招聘
  • 怎样做好邯郸网站建设学做蛋糕有哪些网站
  • 网站显示系统建设中做网页代码的素材网站
  • 网站建设公司的案例深圳模板建站多少钱
  • 无忧网站建设推荐双阳区住房和城乡建设局网站
  • 手机网站开发学习贸易公司注册资金多少合适
  • 柳市外贸网站建设行唐县网站建设公司
  • 江门专业网站建设系统厦门市建设工程造价网
  • 做app网站的软件叫什么名字连云港网站建设电话
  • 网站引导页是什么意思网站安全建设步骤
  • 网站建设企业服务商公司的网站怎么做
  • 网站设计的主要内容徐州网站设计网
  • 网站建设能有多大访问量房地产最新消息爆雷
  • 网站建设产品中心谢岗做网站
  • 网站 宕机 优化整合营销传播工具有哪些
  • 企业网站被黑后如何处理3g手机网站源码
  • 中山创海软件网站建设南宁论坛
  • api网站制作网址访问
  • 增城新塘网站建设建设网站平台哪个好
  • 昆山网站建设推荐东营市住房和城乡建设管理局
  • 做网站 套用模板之后用什么改滨州网站建设费用