Re[2]: std::алгоритмы
От: Valus Россия  
Дата: 11.10.05 19:14
Оценка:
Здравствуйте, Нахлобуч, Вы писали:

Н>Сильно Непонятно, что требуется. Что значит "как определить внутри алгоритма сколько точек записывать через выходной итератор в контейнер пользователь"? Параметр I разве не это указывает? А определение функции может выглядеть, например, так:


Н>
Н>template <typename C>
Н>void gen_points(C &container, size_t num)
Н>{
Н>    back_insert_iterator<C> i(back_inserter(container));
Н>    for( ; num; --num, ++i)
Н>    {
Н>      *i = /* генерация точки */
Н>    } // for
Н>}
Н>

черт.. есть 2а момента.
а) не совсем это то... Неохото указывать тип контейнера в шаблоне, т.к. тогда и back_insert_iterator впринципе не к месту будет — напрямую проще.
нельзя по такой же схеме, как все std алгоритмы (без ссылок на контейнер)?

и

б) а если мне надо не просто добавить в выходной контейнер, а после еще и поработать с ним (допустим сформировали vector с помощью back_insert_iterator, а затем работаем с этим вектором)
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.