Альтернатива 1) < /strong> < /p>
1) < /strong> < /p>
Код: Выделить всё
template
OutputIterator iota_n(OutputIterator first, Size n, T value)
{
while (n--)
*first++ = value++;
return first;
}
< /code>
альтернатива 2) < /strong> < /p>
template
OutputIterator iota_n(OutputIterator first, Size n, T value)
{
return std::generate_n(first, n, [&](){ return value++; });
}
< /code>
Обе альтернативы генерируют эквивалентный код с оптимизацией компиляторов? Это также так, как std :: generate_n Подробнее здесь: https://stackoverflow.com/questions/117 ... om-the-stl
Мобильная версия