删除多组中的不同元素

时间:2019-05-29 17:29:27

标签: c++ multiset

我有一个带有定义的比较器的多集。我有多个具有相同键的不同元素,然后尝试找到一个并清除它。

这样做的最佳方法是什么? 我尝试使用multiset :: lower_bound进行迭代,并运行直到multiset :: upper_bound。这应该工作吗?我的代码有问题

for (auto lower_it =  legal_groups_set.lower_bound(group_to_delete); 
            lower_it != legal_groups_set.upper_bound (group_to_delete) ; 
            lower_it ++){
    if ( group_to_delete ==  * lower_it){
        std::cerr << "Erased";
        legal_groups_set.erase(lower_it);
        return;
    }
    std::cerr << "ERR";
}

0 个答案:

没有答案