Удаление набора итераторов C++

Разрешено ли стирать элемент, на который указывает итератор, и продвигать тот же итератор на одну строку, чтобы перейти к следующему элементу?

set<int>::iterator it = S.begin();
while (it != S.end()) {
    if (shouldBeRemoved(*it)) {
        S.erase(it++); // is this line valid?
    } else {
        ++it;
    }
}
9
задан Marc Andreson 5 April 2012 в 18:00
поделиться