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

oseq - C++

Восстановить пароль Регистрация
 
ninja2
 Аватар для ninja2
230 / 186 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
15.07.2013, 02:07     oseq #1
Здорова!
Есть задачка: "Дополнительно к iseq() определите oseq(). Выходная последовательность, которая задается как аргумент oseq(), должна замещаться выходной последовательностью использующего oseq() алгоритма. Определите подходящий набор перегрузок для по крайней мере трех стандартных алгоритмов по вашему выбору."

Нифига не пойму как ее делать и вообще что, то я не припомню таких алгоритмов, которые б возвращали последовательность, обычно возвращают либо итератор либо пару. Пара наверно и есть последовательность? И как это все должно выглядеть? Вызов как вообще должен происходить? Отак что ли? oseq(aлгоритм); тут алгоритм который возвращает пару возможно equal или equal_range. Вообще не понятно, что тут делать, нужно ж для трех алгоритмов.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
gray_fox
What a waste!
 Аватар для gray_fox
1244 / 1127 / 53
Регистрация: 21.04.2012
Сообщений: 2,350
Завершенные тесты: 3
15.07.2013, 02:22     oseq #2
ninja2, возможно что-то вроде этого имеется в виду:
C++
1
2
3
std::vector<int> input = { /* ... */ };
std::list<int> output;
copy(iseq(input), oseq(output));
Добавлено через 1 минуту
Хотя смысла в этом мало - уже есть std::[back/front_]inserter...
ninja2
 Аватар для ninja2
230 / 186 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
15.07.2013, 03:30  [ТС]     oseq #3
Цитата Сообщение от gray_fox Посмотреть сообщение
возможно что-то вроде этого имеется в виду:
Да нет чото мне тут кажется типо как iseq там мы как бы выходную последовательность через него передавали, а тут уже через oseq передавать входную последовательность, ну тут похоже смысла в нем нету, это чисто теоретически, так как выходная последовательность одним параметром задается или указателем на встроенный массив, либо итератор it.begin() в oseq смысла как бы большого нету, от iseq полезна в общем отак нада написать такой шаблон что бы вызывался допустим mismatch(mass,mass+5,oseq(mass1)); отак от вызывался, я думаю так нужно сделать, короче так будет правильно.

Добавлено через 5 минут
gray_fox, а да я сразу код не понял, ты правильно думаешь, то имелось в веду, я тупанул спать охота.

не досмотрел последнюю строку

Добавлено через 2 минуты
Цитата Сообщение от gray_fox Посмотреть сообщение
Хотя смысла в этом мало - уже есть std::[back/front_]inserter...
Смысла нету это просто попрактиковаться код самому писать, шаблоны потренироваться писать, ну и сразу когда шаблон пишешь понимаешь, что мало что знаешь. Оказывается шаблоны тяжело писать.
Yandex
Объявления
15.07.2013, 03:30     oseq
Ответ Создать тему
Опции темы

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