/*!
* @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.
*/