映射是关联容器,以映射方式存储元素。每个元素都有一个键值和一个映射值。任何两个映射值都不能具有相同的键值。
Map::运算符[]
此运算符用于引用运算符内部给定位置处的元素。与 at() 函数类似,唯一的区别是 at() 函数在位置不在Map大小的范围内时抛出超出范围的异常,而该运算符会导致未定义的行为。
用法:
mapname[key] 参数: Key value mapped to the element to be fetched. 返回: Direct reference to the element at the given key value.
例子:
Input : map mymap; mymap['a'] = 1; mymap['a']; Output: 1 Input : map mymap; mymap["abcd"] = 7; mymap["abcd"]; Output: 7
错误和异常
1. 如果Map中不存在 key ,则显示未定义的行为。
2. 否则它没有异常抛出保证。
// CPP program to illustrate
// Implementation of [] operator
#include <map>
#include <iostream>
#include<string>
using namespace std;
int main()
{
// map declaration
map<int,string> mymap;
// mapping integers to strings
mymap[1] = "Hi";
mymap[2] = "This";
mymap[3] = "is";
mymap[4] = "GeeksForGeeks";
// using operator[] to print string
// mapped to integer 4
cout << mymap[4];
return 0;
}
输出:
GeeksForGeeks
时间复杂度:O(登录)
相关用法
注:本文由纯净天空筛选整理自AyushSaxena大神的英文原创作品 map::operator[] in C++ STL。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。