![]() |
|
Модераторы: bsa |
![]()
|
|
| 1122 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 109 Регистрация: 24.10.2007 Репутация: -1 Всего: нет |
Извиняюсь. А не могли бы вы, написать прямой и обратный итератор для двусвязного списка, чтобы мне окончательно врубиться в тему. Сейчас сел... озадачился. Буду очень признателен. Может тогда вкурю что к чему, а то в инете (да и в книгах) про устройство итераторов практически ничего не написано (нашел только в Павловской, но как-то мутненько). Заранее примного благодарен.
Класс, например, такой:
|
|||
|
||||
| UnrealMan |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 722 Регистрация: 30.3.2006 Репутация: 5 Всего: 32 |
В новом стандарте C++ методы контейнеров cbegin и cend будут введены в дополнение к begin и end. С помощью вызова этих новых методов программист сможет показывать, что получает итераторы для чтения данных контейнера и не собирается их модифицировать.
Если правильно написать обычный итератор (с операторами ++ и ––), то в обычных условиях обратный писать не нужно, т.к. его можно получить, используя std::reverse_iterator, взяв при этом обычный итератор за основу. Но если STL использовать нельзя, то, видимо, вместо std::reverse_iterator следует использовать собственноручно написанный велосипед с той же функциональностью. Это сообщение отредактировал(а) UnrealMan - 30.9.2008, 02:20 |
|||
|
||||
| 1122 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 109 Регистрация: 24.10.2007 Репутация: -1 Всего: нет |
А если не сложно, не могли бы вы код привести для списка двунаправленного?
|
|||
|
||||
| J0ker |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 986 Регистрация: 17.9.2008 Репутация: 9 Всего: 14 |
в List добавить:
для двунаправленного итератора нужны будут небольшие изменения, т.к. он должен иметь возможность пройти от end() назад Это сообщение отредактировал(а) J0ker - 1.10.2008, 00:32 |
||||
|
|||||
| 1122 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 109 Регистрация: 24.10.2007 Репутация: -1 Всего: нет |
Спасибо, J0ker, вам за все!
|
|||
|
||||
![]()
|
| Правила форума "C/C++: Для новичков" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |