std::move_iterator<Iter>::move_iterator - cppreference.com
From cppreference.com
move_iterator(); |
(1) | (constexpr since C++17) |
explicit move_iterator( iterator_type x ); |
(2) | (constexpr since C++17) |
template< class U > move_iterator( const move_iterator<U>& other ); |
(3) | (constexpr since C++17) |
Constructs a new move_iterator.
1) Default constructor. The underlying iterator is value-initialized.
2) The underlying iterator is initialized with x(until C++20)std::move(x)(since C++20).
3) The underlying iterator is initialized with that of other.
|
If |
(until C++20) |
|
This overload participates in overload resolution only if |
(since C++20) |
Parameters
| x | - | iterator to adapt |
| other | - | iterator adaptor to copy |
Example
Defect reports
The following behavior-changing defect reports were applied retroactively to previously published C++ standards.
| DR | Applied to | Behavior as published | Correct behavior |
|---|---|---|---|
| LWG 3435 | C++20 | overload (3) was not constrained | constrained |