C++中maps的用法
时间:2019-09-14
本文章向大家介绍C++中maps的用法,主要包括C++中maps的用法使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
map类型中的所有元素都是pair类型,pair类型顾明思议就是成对存在的类型。比如 pair < string, string > StudentTom ( " StudentID ", " StudentName "),定义了一个成对存在的一个Student,第一个值为学号,第二个值为学生姓名。第一个又被称键,第二个称为值,两个成对存在。并且这种定义不局限于string类,其他类型也可以。map类型就相当于有一系列pair类型的数据。
map类型的定义:map < string, string > StudentList;
初始化: StudentList. insert ( map<string,string>::value_type("001","Brown"));
最常用操作函数:
begin() 返回指向map头部的迭代器
end() 返回指向map末尾的迭代器
下面是利用map类型完成学号绑定姓名,完成插入,查找,遍历,删除的程序
1 /*利用map类型完成学号绑定姓名,完成插入,查找,遍历,删除*/ 2 #include<iostream> 3 #include<string> 4 #include<map> 5 using namespace std; 6 7 void map_insert(map<string, string>*mapStudent, string ID, string name) 8 { 9 mapStudent->insert(map<string, string>::value_type(ID,name)); 10 }; 11 int main() 12 { 13 map<string, string>mapS; 14 //插入同学 15 map_insert(&mapS,"001","Brown"); 16 map_insert(&mapS, "002", "Cony"); 17 map_insert(&mapS, "003", "Tom"); 18 19 //查找同学 20 map<string, string>::iterator iter; 21 iter = mapS.find("003"); 22 if (iter != mapS.end()) 23 { 24 cout << "找到该同学"; 25 cout << iter->second << endl << endl; 26 } 27 else 28 { 29 cout << "没找到该同学"<<endl; 30 } 31 32 //查看所有同学(遍历) 33 for (iter = mapS.begin(); iter != mapS.end(); iter++) 34 { 35 cout << endl<< iter->first << iter->second << endl; 36 } 37 38 //删除某同学 39 iter = mapS.find("003"); 40 if (iter != mapS.end()) 41 { 42 cout <<endl<< "删除的同学为"; 43 cout << iter->second << endl; 44 mapS.erase(iter); 45 } 46 else 47 { 48 cout << "没找到该同学"; 49 50 } 51 for (iter = mapS.begin(); iter != mapS.end(); iter++) 52 { 53 cout << iter->first << iter ->second<< endl; 54 } 55 56 getchar(); 57 return 0; 58 59 60 }
原文地址:https://www.cnblogs.com/wuhongjian/p/11519980.html
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- OkHttp请求耗时统计
- Ubuntu 18.04 通过 Docker 快速部署 Smokeping 2.6.11 教程
- MySQL 8.0新特性 — 函数索引
- Docker快速上手指北(一)【技术创作101训练营】
- leetcode树之二叉搜索树的最近公共祖先
- 【技术创作101训练营】技术角 | 在CentOS 8上使用Nginx 1.18: 基本配置
- Java诊断应用之Arthas实战(技术创作101训练营)
- 突击并发编程JUC系列-数组类型AtomicLongArray
- 个人量化投资体系搭建(一)
- 服务端的 WebAssembly 与 Rust 入门篇
- pImpl
- Flask+requests发起页面请求示例
- 【技术创作101训练营】Git 如何成功配置SSH key连接多个代码平台?
- 深入浅出iOS内存管理-技术创作101训练营
- 聊聊原型 Prototype | 技术创作101训练营