Редкая задача в программировании решается без контейнеров. В C++
наиболее часто используемый контейнер - std::vector
(возможно кто-то не согласится и скажет: "Зачем std::vector, когда есть boost", но это дела не меняет).
При работе с std::vector
часто возникает задача - удалить из него элемент (или несколько элементов). На помощь приходит метод erase
. И это работает! Но иногда мы можем столкнуться с ситуацией, когда что-то идёт не так.
Что же может пойти не так?
Рассмотрим небольшой пример. Исходный код лежит в репозитории.