Возможно, это дубликат, но я не нашел ничего, ищущего:
Когда erase (value)
вызывается для std :: multiset
, все элементы с найденным значением удаляются. Единственное решение, которое я мог придумать, это:
std::multiset<int>::iterator hit(mySet.find(5));
if (hit!= mySet.end()) mySet.erase(hit);
Это нормально, но я подумал, что может быть лучше. Есть идеи?