Namespaces
Variants

operator+,-(ranges::adjacent_view::iterator)

cppreference.net에서
 
 
범위 라이브러리
범위 어댑터
 
 
friend constexpr /*iterator*/ operator+( const /*iterator*/& i,
                                         difference_type n )
    requires ranges::random_access_range<Base>;
(1) (C++23부터)
friend constexpr /*iterator*/ operator+( difference_type n,
                                         const /*iterator*/& i )
    requires ranges::random_access_range<Base>;
(2) (C++23부터)
friend constexpr /*iterator*/ operator-( const /*iterator*/& i,
                                         difference_type n )
    requires ranges::random_access_range<Base>;
(3) (C++23부터)
friend constexpr difference_type operator-( const /*iterator*/& i,
                                            const /*iterator*/& j )
    requires std::sized_sentinel_for<ranges::iterator_t<Base>,
                                     ranges::iterator_t<Base>>;
(4) (C++23부터)

current_을 기본 반복자 배열이라 하고, Base를 기본 뷰의 (const 한정일 수도 있는) 타입이라고 하자.

1,2) i을 n만큼 증가시킨 반복자를 반환한다. 다음과 동일함: auto r = i; r += n; return r;.
3) i을 n만큼 감소시킨 반복자를 반환한다. 다음과 동일함: auto r = i; r -= n; return r;.
4) i과 j 사이의 거리를 반환한다. 다음과 동일함: return i.current_.back() - j.current_.back();.

이 함수들은 일반적인 비한정 또는 한정 조회로는 보이지 않으며, 인자 종속 조회를 통해서만 찾을 수 있다. 단, adjacent_view::iterator<Const>이(가) 인수의 연관 클래스인 경우에 한한다.

매개변수

i, j - 반복자
n - 현재 위치 기준 상대 위치

반환값

1,2) 증가된 반복자.
3) 감소된(decremented) 반복자(iterator).
4) 주어진 반복자 사이의 거리.

예제

참고 항목

기본 반복자를 전진 또는 후진시킵니다
(public member function)