Multiset只擦除一个实例

时间:2018-05-19 22:08:54

标签: c++ c++11 stl

for(auto it = prefixSet.begin();it!=prefixSet.end();it++)
    {
        string str = *it;
        if(prefixSet.count(str) > 1)
        {
            cout << prefixSet.count(str) << " " << str << endl;
            prefixSet.erase(it);
            cout << prefixSet.count(str) << " " << str << endl;
        }
    }

Prefixset是一个多字符串,其字符串为“d”。执行上面的代码后,我得到以下输出。

3 d
2 d

我原以为它会删除所有实例并计为0。

我错过了什么?

0 个答案:

没有答案