DEV Community

dinhluanbmt
dinhluanbmt

Posted on

C++, map operator []

To check whether a key is present in a map or not, we can use the [] operator. However, if the key is not found in the map, the [] operator will automatically insert that key, causing the size of the map to increase. Therefore, it is preferable to use the find function instead.

unordered_map<int, bool> m;
m[1] = true;
m[2] = true;
//just want to check whether 3 in map or not ?
if (m[3] == true) // insert to map (3,false)
    cout << "3 in map" << endl;
if (m.find(3) != m.end()) {
//so we found 3 in map.
     cout << " 3 already in map" << endl;
}
else {
   cout << "not in map" << endl;
}
Enter fullscreen mode Exit fullscreen mode

Top comments (0)