arrayConstructCopy - SeqAn API Documentation

# fn() arrayConstructCopy
Copy constructs an array of objects into in a given memory buffer.

Defined in | <seqan/basic.h>
Signature | `void arrayConstructCopy(sourceBegin, sourceEnd, target);`

## Parameters

`sourceBegin` | Iterator to the first element of the source range.
`sourceEnd` | Iterator behind the last element of the source range. `sourceEnd` should have the same type as `sourceBegin`.
`target` | Pointer to the memory block the new objects will be constructed in. The type of `target` specifies the type of the constructed objects: If `T*` is the type of `target`, then the function constructs objects of type `T`. The memory buffer should be large enough to store `sourceEnd` - `sourceBegin` objects. An appropriate (copy-) constructor that constructs an target objects given a source object is required.

## Data Races

If not stated otherwise, concurrent invocation is not guaranteed to be thread-safe.

#### Dox Sources

    /*!
     * @fn arrayConstructCopy
     *
     * @headerfile <seqan/basic.h>
     *
     * @brief Copy constructs an array of objects into in a given memory buffer.
     *
     * @signature void arrayConstructCopy(sourceBegin, sourceEnd, target);
     *
     * @param[in] sourceBegin Iterator to the first element of the source range.
     * @param[in] sourceEnd Iterator behind the last element of the source range.
     *                      <tt>sourceEnd</tt> should have the same type as
     *                      <tt>sourceBegin</tt>.
     * @param[in] target Pointer to the memory block the new objects will be
     *                   constructed in. The type of <tt>target</tt> specifies the
     *                   type of the constructed objects: If <tt>T*</tt> is the type
     *                   of <tt>target</tt>, then the function constructs objects of
     *                   type <tt>T</tt>. The memory buffer should be large enough
     *                   to store <tt>sourceEnd</tt> - <tt>sourceBegin</tt> objects.
     *                   An appropriate (copy-) constructor that constructs an
     *                   target objects given a source object is required.
     */