Например, 23.1 / 10:
no swap()
делает недействительными любые ссылки, указатели или итераторы, относящиеся к элементам заменяемых контейнеров.[Примечание: итератор end()
не ссылается ни на один элемент, поэтому он может быть признан недействительным.- конец примечания]
Я не знаю, можем ли мы быть уверены, что итератор, ссылающийся на элемент, последовательно использовался в стандарте для исключения конечных итераторов: /
Как сказано вкомментарий, я полагаю, что это позволяет конечным итераторам указывать на значения часового в контейнере.
Например, типичная реализация List
с двойной связью заключается в создании структуры Node
и наличии одной Node
по значению в List
, чтобы действовать как конечный узел.