Особенно замечательно, что при сортировке не "ящики" переставляются, а их "содержимое" перекладывается. А итератора как не было, так и нет. Тихий ужас, в общем.
Да? И правда, не заметил... эту функцию я написал, но в программе она оказалась невостребованной, так и осталась в исходнике закомментированной, оттуда я её и вытащил. Если бы использовалась в проге - возможно давно довёл бы до ума.
Плюс сыграла роль привычка к работе с массивами, перекладка содержимого скорее всего "оттуда".
В общем, соглашусь, пример я привёл неудачный и не из той оперы.
Тогда что такое итератор практически? Это класс, который умеет "работать" со структурами (данными)? То есть он должен у себя внутри хранить адреса начала данных, конца, текущего положения? Кроме того он должен уметь добавлять и удалять данные, чтобы самому корректно менять адреса?