c++ map删除特定条件下的元素

   2024-10-08 4420
核心提示:要删除满足特定条件的元素,可以使用std::map的erase函数结合std::remove_if函数来实现。以下是一个示例代码:#include iostream

要删除满足特定条件的元素,可以使用std::maperase函数结合std::remove_if函数来实现。以下是一个示例代码:

#include <iostream>#include <map>#include <algorithm>int main() {    std::map<int, std::string> myMap = {        {1, "apple"},        {2, "banana"},        {3, "cherry"},        {4, "date"},        {5, "fig"}    };    // 删除key为偶数的元素    myMap.erase(std::remove_if(myMap.begin(), myMap.end(), [](const std::pair<int, std::string>& pair) {        return pair.first % 2 == 0;    }), myMap.end());    // 输出删除后的map元素    for (const auto& pair : myMap) {        std::cout << pair.first << ": " << pair.second << std::endl;    }    return 0;}

在上面的示例中,我们首先定义了一个std::map并初始化了一些元素。然后使用std::remove_if函数结合lambda表达式来判断是否满足删除条件,最后再调用erase函数来删除满足条件的元素。

 
举报打赏
 
更多>同类维修大全
推荐图文
推荐维修大全
点击排行

网站首页  |  关于我们  |  联系方式网站留言    |  赣ICP备2021007278号