#include <map>应用

在看这篇文章之前,先看看#include <map>的简介。

#include <map>icon-default.png?t=O83Ahttps://blog.csdn.net/NOIP1ding_c/article/details/144293214这篇文章我来给大家一个map的应用。  

应用

#include <iostream>
#include <map>
#include <string>
int main() {
    // 创建一个 map 容器,存储员工的姓名和年龄
    std::map<std::string, int> employees;
    // 插入员工信息
    employees["Alice"] = 30;
    employees["Bob"] = 25;
    employees["Charlie"] = 35;
    // 遍历 map 并打印员工信息
    for (std::map<std::string, int>::iterator it = employees.begin(); it != employees.end(); ++it) {
        std::cout << it->first << " is " << it->second << " years old." << std::endl;
    }
    return 0;
}

`#include <string>` 和 `#include <map>` 是 C++ 标准库中的两个头文件声明,分别引入了字符串处理功能和关联容器(映射表)的功能。 ### `<string>` 这个头文件提供了对标准字符串类的支持。通过包含此头文件,可以使用 `std::string` 类型来进行高效的字符串操作。相比于传统的字符数组 (`char[]`),`std::string` 提供了许多内置函数用于简化字符串管理、拼接、查找等任务。例如: ```cpp #include <iostream> #include <string> int main() { std::string str = "Hello, world!"; std::cout << str.length(); // 输出字符串长度 } ``` 常用方法包括但不限于: - `.length()` 或 `.size()` 获取字符串长度; - `.substr(start, length)` 截取部分字符串; - `.find(sub_str)` 查找子串的位置; --- ### `<map>` 该头文件引入了一个名为 `std::map` 的关联式容器模板类。它存储的是键值对 (key-value),并且内部会自动按照键排序。对于需要快速查询数据结构的应用场景非常有用,比如建立从名称到电话号码之间的对应关系等等。 下面是一个简单的例子展示如何创建并访问 map 中的内容: ```cpp #include <iostream> #include <map> int main(){ std::map<std::string,int> ageMap; // 创建一个 string->int 映射 ageMap["Alice"] = 25; ageMap["Bob"] = 30; if(ageMap.find("Alice") != ageMap.end()) std::cout << "Age of Alice is "<<ageMap["Alice"]; } ``` 这里需要注意几点事项: - 插入元素时如果指定的 key 已经存在,则不会插入新项而是更新已有记录。 - 访问不存在 keys 将导致默认构造 value 被添加进地图里(仅限于非 const 地图),所以在读之前最好先检查是否存在目标 key。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值