Архив Тегов:итератор

Крайне необычный способ разыменования итератора

Итераторы занимают важное место в разработке программ на С++. Но многие начинающие программисты совершенно не понимают, как ими пользоваться. И иногда рождают такой код, от которого волосы встают дыбом. Ниже приводится пример такого кода для задачи получения значения, на которое указывает итератор. Продолжить чтение →

Итераторы не защищают от переполнения

Итераторы были введены в С++ в качестве основного механизма доступа к элементам контейнера. Они должны обеспечивать унифицированный объектно-ориентированный доступ к элементам. Но насколько он безопасен? То есть, защищают ли итераторы от индексного переполнения? Давайте проверим. Продолжить чтение →

Неоднозначность при использовании reverse_iterator и const_reverse_iterator

Итераторы reverse_iterator и const_reverse_iterator предназначены для перечисления элементов контейнера в обратном порядке (от конца к началу). Об этом написано в любой более или менее приличной книге по С++. Но есть ряд моментов, о которых там умалчивают. Один из них связан с неоднозначностью, возникающей при работе с обратными итераторами. Продолжить чтение →