Namespaces
Variants

iter_swap (ranges::adjacent_view:: iterator )

From cppreference.net
Ranges library
Range adaptors
friend constexpr void iter_swap ( const /*iterator*/ & x, const /*iterator*/ & y )

noexcept ( /*see below*/ )

requires std:: indirectly_swappable < ranges:: iterator_t < Base >> ;
(C++23 이후)

두 개의 기반 반복자 배열( current_ 로 표시됨)이 가리키는 객체들을 교환합니다.

다음과 동일합니다:

for (std::size_t i{}; i != N; ++i)
{
    std::ranges::iter_swap(x.current_[i], y.current_[i]);
}

동작 전에 x. current_ 내의 어떤 반복자도 y. current_ 내의 반복자와 동일하지 않으면 동작은 정의되지 않습니다.

이 함수는 일반적인 unqualified 또는 qualified lookup 으로는 보이지 않으며, adjacent_view:: iterator <Const> 가 인자들의 associated class일 때에만 argument-dependent lookup 에 의해 찾을 수 있습니다.

목차

매개변수

x, y - 반복자

반환값

(없음)

예외

noexcept 명세:
noexcept ( std :: ranges:: iter_swap ( declval < ranges:: iterator_t < Base >> ( ) ,
declval < ranges:: iterator_t < Base >> ( ) ) )

참고 항목

(C++20)
역참조 가능한 두 객체가 참조하는 값을 교환
(커스터마이제이션 포인트 객체)
두 반복자가 가리키는 요소를 교환
(함수 템플릿)