在C++98标准中,可以使用std::map::erase函数来删除std::map中指定的键值对。下面是一个示例代码:

#include <iostream>
#include <map>

int main() {
    std::map<std::string, int> myMap;

    // 插入键值对
    myMap["apple"] = 5;
    myMap["banana"] = 10;
    myMap["orange"] = 7;

    // 删除键为"banana"的键值对
    std::map<std::string, int>::iterator it = myMap.find("banana");
    if (it != myMap.end()) {
        myMap.erase(it);
    }

    // 遍历输出剩余的键值对
    for (it = myMap.begin(); it != myMap.end(); ++it) {
        std::cout << "Key: " << it->first << ", Value: " << it->second << std::endl;
    }

    return 0;
}

运行结果:

Key: apple, Value: 5
Key: orange, Value: 7

在上面的示例中,我们首先插入了三个键值对到myMap中。然后,我们使用std::map::find函数来查找键为"banana"的元素,并将其返回的迭代器与myMap.end()比较,以确保元素存在。最后,我们使用std::map::erase函数来删除找到的元素。最后,我们遍历输出剩余的键值对

linux cc++ map key为string value 为int中erase 用法c++标准为c++98给出例子

原文地址: https://www.cveoy.top/t/topic/isUE 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录