cpp/memory/uninitialized move

@1@ Moves elements from the range to an uninitialized memory area beginning at  as if by

@@If an exception is thrown during the initialization, some objects in are left in a valid but unspecified state, and the objects already constructed are destroyed in an unspecified order.

@2@ Same as, but executed according to.

Return value
Iterator to the element past the last element moved.

Complexity
Linear in the distance between and.