📅  最后修改于: 2023-12-03 15:13:56.476000             🧑  作者: Mango
在C++ STL中,map是一种关联容器,它提供了一种将键映射到值的方式。map中的元素是具有一定关系的键值对,而且这些键和值都可以是不同的类型。map数据结构的形式是一颗红黑树,具有如下优点:
而运算符[]则是STL中map最常用的操作之一,它可以用来进行键值对的访问和修改。
map容器中的运算符[]的使用方法如下:
#include <iostream>
#include <map>
using namespace std;
int main()
{
map<int, string> student;
// 插入元素
student[1] = "小明";
student[2] = "小李";
student[3] = "小张";
// 访问元素
cout << "ID为2的学生姓名为:" << student[2] << endl;
// 修改元素
student[2] = "小美";
cout << "修改后ID为2的学生姓名为:" << student[2] << endl;
return 0;
}
运行结果:
ID为2的学生姓名为:小李
修改后ID为2的学生姓名为:小美
运算符[]的使用比较灵活,既可以用于访问元素,也可以用于修改元素。当map中没有该元素时,运算符[]会自动插入该键并设置默认值(默认值取决于值类型)。使用过程中,需要注意以下几点:
C++ STL中的map数据容器极大的方便了我们对映射结构的操作,而运算符[]的使用使简化了我们对于键值对的访问和修改。在使用过程中,需要注意元素不能够被直接访问,同时需要考虑复制操作符以及大对象的问题。