| Home | Libraries | People | FAQ | More

##### copy_n

###### Prototype

    template<class SinglePassRange, class Size, class OutputIterator>
    OutputIterator copy_n(const SinglePassRange& rng, Size n, OutputIterator out);

###### Description

`copy_n` is provided to completely replicate the standard algorithm header, it is preferable to use Range Adaptors and the extension functions to achieve the same result with greater safety.

`copy_n` copies elements from `[boost::begin(rng), boost::begin(rng) + n)` to the range `[out, out + n)`

###### Definition

Defined in the header file `boost/range/algorithm_ext/copy_n.hpp`

###### Requirements

1. `SinglePassRange` is a model of the Single Pass Range Concept.
2. `Size` is a model of the `Integer` Concept.
3. `OutputIterator` is a model of the `OutputIteratorConcept`.

###### Complexity

Linear. Exactly `n` elements are copied.