Namespaces
Variants

iter_move (std::basic_const_iterator<Iter>)

From cppreference.net
Iterator library
Iterator concepts
Iterator primitives
Algorithm concepts and utilities
Indirect callable concepts
Common algorithm requirements
(C++20)
(C++20)
(C++20)
Utilities
(C++20)
Iterator adaptors
Range access
(C++11) (C++14)
(C++14) (C++14)
(C++11) (C++14)
(C++14) (C++14)
(C++17) (C++20)
(C++17)
(C++17)
friend constexpr /*ссылка-на-rvalue*/
iter_move ( const basic_const_iterator & i ) noexcept ( /* см. ниже */ ) ;
(начиная с C++23)

Приводит результат разыменования базового итератора к его связанному типу константной rvalue-ссылки.

Тип возвращаемого значения /*rvalue-reference*/ является std:: common_reference_t < const std:: iter_value_t < Iter > && , std:: iter_rvalue_reference_t < Iter >> .

Тело функции эквивалентно
return static_cast < /*rvalue-reference*/ > ( std :: ranges:: iter_move ( i. base ( ) ) ) ; .

Эта функция не видна при обычном unqualified или qualified lookup , и может быть найдена только с помощью argument-dependent lookup , когда std:: basic_const_iterator < Iter > является ассоциированным классом аргументов.

Содержание

Параметр

i - a basic_const_iterator

Возвращаемое значение

Ссылка на rvalue на константу или prvalue.

Исключения

noexcept спецификация:
noexcept ( noexcept ( static_cast < /*rvalue-reference*/ > ( std :: ranges:: iter_move ( i. base ( ) ) ) ) )

Пример

Смотрите также

(C++20)
преобразует результат разыменования объекта в соответствующий тип rvalue-ссылки
(объект точки кастомизации)