Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Анд_Рей
2 / 2 / 0
Регистрация: 27.12.2009
Сообщений: 145
#1

Зачем нужны итераторы? - C++

21.09.2013, 01:57. Просмотров 591. Ответов 3
Метки нет (Все метки)

Практическое использование мне понятно - с их помощью обходят контейнеры и т.д и т.п.Но почему не реализовать нужные методы,перегрузить нужные операторы и пожалуйста?! Зачем определять итератор?!В чем принципиальная разница?!
Спасибо!!!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.09.2013, 01:57     Зачем нужны итераторы?
Посмотрите здесь:

C++ Зачем нужны операторы << и >>
C++ Зачем нужны header-файлы
Зачем нужны адапторы контейнеров? C++
Зачем нужны макросы? C++
C++ Зачем нужны сортировки
C++ Зачем нужны деревья?
C++ Зачем нужны указатели?
C++ Итераторы: зачем используется оператор инкремента для потоков вывода?
C++ Зачем нужны виртуальные методы?
Зачем нужны исключения? C++
C++ Зачем нужны классы?
Зачем нужны указатели C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
OhMyGodSoLong
~ Эврика! ~
 Аватар для OhMyGodSoLong
1240 / 989 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
21.09.2013, 02:00     Зачем нужны итераторы? #2
Абстрагирование.

Потому что не хотят в своём коде для какого-то контейнера реализовывать нужные функции. Потому что не хотят переписывать эти функции, если контейнер поменяется. Потому что хотят обрабатывать различные контейнеры одинаковым образом.
Mr.X
Эксперт С++
 Аватар для Mr.X
3021 / 1677 / 265
Регистрация: 03.05.2010
Сообщений: 3,867
21.09.2013, 08:12     Зачем нужны итераторы? #3
Чтобы удобно было писать алгоритмы (для реализации которых и создавалась STL). Алгоритм знает о контейнере только то, что он является последовательностью, и манипулирует элементами этой последовательности с помощью итераторов (аналоги указателей на элементы массива). И это называется обобщенным программированием.

Добавлено через 4 часа 46 минут
Кстати, итераторы позволяют алгоритмам и со встроенными сишными массивами работать. Интересно, как в них вы собираетесь реализовать "нужные методы"?
Бендерродригез
Сгибальщик
 Аватар для Бендерродригез
42 / 42 / 3
Регистрация: 18.05.2013
Сообщений: 220
Завершенные тесты: 1
21.09.2013, 10:45     Зачем нужны итераторы? #4
Цитата Сообщение от Mr.X Посмотреть сообщение
Кстати, итераторы позволяют алгоритмам и со встроенными сишными массивами работать. Интересно, как в них вы собираетесь реализовать "нужные методы"?

Не по теме:

Может, просто таки писать на С++, а не на С?

Yandex
Объявления
21.09.2013, 10:45     Зачем нужны итераторы?
Ответ Создать тему
Опции темы

Текущее время: 12:28. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru