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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 20, средняя оценка - 4.70
Maxi Paul
0 / 0 / 0
Регистрация: 28.09.2010
Сообщений: 4
#1

Написать свой итератор, чтобы алгоритмы STL работали с моим классом - C++

27.12.2010, 18:47. Просмотров 2615. Ответов 4
Метки нет (Все метки)

Как написать свой итератор, чтобы действовал как стандартный и мог использовать STL алгоритмы.
(У меня есть класс двусвязный списко (контейнерные не предлагать), нужно написать итератор, который будет унаследован от itertator_traits или просто от iterator). Не получется правильно унаследовать.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.12.2010, 18:47     Написать свой итератор, чтобы алгоритмы STL работали с моим классом
Посмотрите здесь:
C++ Как более менее правильно написать итератор(не STL).
Реализовать итератор в стиле STL C++
C++ STL итератор на конец контейнера
Свой однонаправленный итератор C++
C++ Свой итератор для своего шаблона
STL алгоритмы сортировки C++
C++ Функторы и алгоритмы stl
C++ Задача на С++. Алгоритмы библиотеки STL.
C++ Алгоритмы STL Удаление элементов в векторе
C++ Стандартная библиотека шаблонов STL Алгоритмы
Контейнер map и алгоритмы STL: несовместимость? C++
Избавиться от цикла, используя алгоритмы из STL C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
sandye51
программист С++
681 / 583 / 39
Регистрация: 19.12.2010
Сообщений: 2,016
27.12.2010, 19:07     Написать свой итератор, чтобы алгоритмы STL работали с моим классом #2
следуй исходя из сути итератора - указатель на элемент массива
соот-но для списка напиши класс двунаправленный итератор, и в своем классе список добавь 2 итератора на первый и последний элементы.

Добавлено через 2 минуты
хотя я сомневаюсь что у тебя из этой затии получится чтоюы функции принимали твои итераторы
Nick Alte
Эксперт С++
1608 / 1000 / 118
Регистрация: 27.09.2009
Сообщений: 1,927
Завершенные тесты: 1
27.12.2010, 19:14     Написать свой итератор, чтобы алгоритмы STL работали с моим классом #3
Итератор - это концепция. Его необязательно наследовать, главное - описать определённым образом. Определить ему операции ==, *, ->, ++ и -- (ну, может быть, ещё несколько - это надо глянуть подробнее) - и подавляющее большинство алгоритмов будут кушать его как миленькие. Ну и ещё определить встроенные типы как в iterator (то есть, с теми же именами).
Maxi Paul
0 / 0 / 0
Регистрация: 28.09.2010
Сообщений: 4
28.12.2010, 11:46  [ТС]     Написать свой итератор, чтобы алгоритмы STL работали с моим классом #4
Спасибо. Попробую!
ForEveR
В астрале
Эксперт С++
7968 / 4730 / 320
Регистрация: 24.06.2010
Сообщений: 10,539
Завершенные тесты: 3
28.12.2010, 11:59     Написать свой итератор, чтобы алгоритмы STL работали с моим классом #5
Вектор наподобие STL
если что может пригодится. писал свой вектор + аллокатор + итератор. как пример можете посмотреть
Yandex
Объявления
28.12.2010, 11:59     Написать свой итератор, чтобы алгоритмы STL работали с моим классом
Ответ Создать тему
Опции темы

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