Почему std :: vector :: insert делает недействительными все итераторы после точки вставки
когдаinsert
-вstd::vector
стандарт C ++ гарантирует, что все итераторы до точки вставки остаются действительными до тех пор, покаcapacity
не исчерпан (см. [23.2.4.3/1] илианнулирование итератора std :: vector).
В чем причина того, что итераторы после точки вставки остаются в силе (если емкость не исчерпана)? Конечно, они будут тогда указывать на другой элемент, но (из предполагаемой реализацииstd::vector
) все еще должно быть возможно использовать такой итератор (например, разыменовать его или увеличивать его).