std::move_iterator::base - cppreference.com (original) (raw)

(1)
iterator_type base() const; (constexpr since C++17) (until C++20)
constexpr const iterator_type& base() const& noexcept; (since C++20)
constexpr iterator_type base() &&; (2) (since C++20)

Returns the underlying iterator.

  1. Returns a copy of(until C++20)reference to(since C++20) the underlying iterator.

  2. Returns an iterator move constructed from the underlying iterator.

[edit] Return value

[edit] Example

[edit] 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 3391 C++20 overload (1) returned a copy of the underlying iterator returns a reference
LWG 3593 C++20 overload (1) was not noexcept made noexcept

[edit] See also