Скажите, у меня есть набор:
std::unordered_set<int> mints;
Тогда я делаю:
mints.erase(foo);
Но мяты не содержат фу! Гарантируется ли, что ничего плохого не произойдет, и что стирание просто вернет 0?
Если вы получите перегруженный erase() с помощью erase( const key_type& key ), а ключ не существует, тогда ничего плохого не произойдет, это будет неоперативный процесс, и erase() вернет 0.
erase()
erase( const key_type& key )
0