moveConstruct overloads
Declared in <bslalg_arrayprimitives.h>
Move the elements of type allocator_traits<ALLOCATOR>::value_type in the range beginning at the specified fromBegin location and ending immediately before the specified fromEnd location into the uninitialized array beginning at the specified toBegin location, using the specified allocator to supply memory (if required). The elements in the input array are left in a valid but unspecified state. If a constructor throws an exception during this operation, the output array is left in an uninitialized state. The behavior is undefined unless toBegin refers to space sufficient to hold fromEnd - fromBegin elements.
template<class ALLOCATOR>
static
void
moveConstruct(
bsl::allocator_traits<ALLOCATOR>::pointer toBegin,
bsl::allocator_traits<ALLOCATOR>::pointer fromBegin,
bsl::allocator_traits<ALLOCATOR>::pointer fromEnd,
ALLOCATOR allocator);
» more...
Move the elements of the (template parameter) TARGET_TYPE starting at the specified fromBegin address and ending immediately before the specified fromEnd address into the uninitialized array of TARGET_TYPE beginning at the specified toBegin address, using the specified allocator to supply memory (if required). The elements in the input array are left in a valid but unspecified state. If a constructor throws an exception during this operation, the output array is left in an uninitialized state. The behavior is undefined unless toBegin refers to space sufficient to hold fromEnd - fromBegin elements.
template<class TARGET_TYPE>
static
void
moveConstruct(
TARGET_TYPE* toBegin,
TARGET_TYPE* fromBegin,
TARGET_TYPE* fromEnd,
bslma::Allocator* allocator);
» more...