Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. — Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

array::array (11 of 11 overloads)
PrevUpHomeNext

Move constructor.

Synopsis
array(
    array&& other,
    storage_ptr sp);
Description

The array is constructed with the contents of other by move semantics, using the specified memory resource:

  • If *other.storage() == *sp, ownership of the underlying memory is transferred in constant time, with no possibility of exceptions. After construction, the moved-from array behaves as if newly constructed with its current storage pointer.
  • If *other.storage() != *sp, an element-wise copy is performed, which may throw. In this case, the moved-from array is not changed.
Complexity

At most, linear in other.size().

Exception Safety

Strong guarantee. Calls to memory_resource::allocate may throw.

Parameters

Name

Description

other

The container to move

sp

A pointer to the boost::container::pmr::memory_resource to use. The container will acquire shared ownership of the memory resource.


PrevUpHomeNext