Поделиться через


uninitialized_copy_n

Создает копию заданного числа элементов из итератора ввода. Копии помещаются в прямой итератор.

template<class InputIterator, class Size, class ForwardIterator>
    ForwardIterator uninitialized_copy_n(
        InputIterator _First, 
        Size _Count,
        ForwardIterator _Dest
    );

Параметры

  • _First
    Итератор ввода, который ссылается на объект, подлежащий копированию.

  • _Count
    Целочисленный тип со знаком или без знака, указывающий количество операций копирования объекта.

  • _Dest
    Прямой итератор, ссылающийся на место размещения новых копий.

Возвращаемое значение

Прямой итератор, обращающийся к первой позиции после места назначения. Если исходный диапазон был пуст, итератор обращается к _First*.*

Заметки

Шаблонная функция фактически выполняет следующее.

for (; 0 < count; -- count)

new ((void *)&*_Dest++)

iterator_traits<InputIterator>::value_type(*_First++);

return dest;

если код не создает исключение. В этом случае все созданные объекты уничтожаются, и создается исключение.

Требования

Заголовок: <memory>

Пространство имен: std

См. также

Ссылки

<memory>