Я хочу стереть элементы std :: map от beginIt до endIt. erase Функция возвращает итератор элементу, который следует за последним удаленным элементом. разве это не конец? Почему стирание возвращает итератор?Почему map.erase возвращает итератор?
auto it = m_map.erase(beginIt, endIt);
Есть ли случай для std :: map где (it! = EndIt)? –
Почему ты так говоришь? 'std :: vector :: erase' возвращает итератор, следующий за последним удаленным элементом, так же, как' std :: map :: erase'. – SergeyA
@SergeyA 'std :: map :: erase (beg, end)' возвращает 'end'. 'std :: vector :: erase (beg, end)' возвращает итератор в элемент 'end', указывающий, а не' end'. –