Я использую QHash в качестве контейнера, и у меня есть задача удалить все элементы, удовлетворяющие предикату. Сначала я думал использовать идиому Erase-remove_idiom, но оказалось, что у QHash нет выбора для удаления диапазона, но только функция для удаления одного элемент через итератор.
std::unordered_map (который концептуально близок к QHash Qt) имеет функцию a> удаления диапазона.
Отсюда возникает вопрос: почему в QHash нет аналогичной функции и как лучше удалить элементы из QHash, удовлетворяющие предикату?