c++中怎么用map删除指定key值的元素

avatar
作者
筋斗云
阅读量:0

要删除map中指定的key值元素,可以使用map的erase函数来实现。具体的操作步骤如下:

  1. 使用map的find函数查找要删除的key值对应的迭代器。
  2. 判断查找结果是否等于map.end(),如果等于表示没有找到对应的key值,无法删除。
  3. 如果找到了对应的key值,使用map的erase函数删除该元素。

示例代码如下:

#include <iostream> #include <map>  int main() {     std::map<int, std::string> myMap;          myMap[1] = "apple";     myMap[2] = "banana";     myMap[3] = "orange";          int keyToDelete = 2;          auto it = myMap.find(keyToDelete);     if (it != myMap.end()) {         myMap.erase(it);         std::cout << "Element with key " << keyToDelete << " deleted" << std::endl;     } else {         std::cout << "Element with key " << keyToDelete << " not found" << std::endl;     }          // Output the remaining elements in the map     for (auto const& pair : myMap) {         std::cout << pair.first << ": " << pair.second << std::endl;     }          return 0; } 

上面的代码会输出以下结果:

Element with key 2 deleted 1: apple 3: orange 

这样就成功删除了map中key值为2的元素。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!