...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
Move assignment.
value
& operator=(value
&& other);
The contents of the value are replaced with the contents of other
using move semantics:
*other.storage() == *sp
,
ownership of the underlying memory is transferred in constant time,
with no possibility of exceptions. After assignment, the moved-from
value becomes a null with its current storage pointer.
*other.storage() != *sp
,
an element-wise copy is performed if other.is_structured() == true
, which may throw. In this case,
the moved-from value is not changed.
Constant, or linear in this->size()
plus other.size()
.
Strong guarantee. Calls to memory_resource::allocate
may throw.
Name |
Description |
---|---|
|
The value to assign from. |