Namespaces
Variants

std::ranges::concat_view<Views...>:: iterator <Const>:: operator++,--,+=,-=

From cppreference.net
Ranges library
Range adaptors
constexpr /*iterator*/ & operator ++ ( ) ;
(1) (C++26부터)
constexpr void operator ++ ( int ) ;
(2) (C++26부터)
constexpr /*iterator*/ operator ++ ( int )
requires /*all-forward*/ < Const, Views... > ;
(3) (C++26부터)
constexpr /*iterator*/ & operator -- ( )
requires /*concat-is-bidirectional*/ < Const, Views... > ;
(4) (C++26부터)
constexpr /*iterator*/ operator -- ( int )
requires /*concat-is-bidirectional*/ < Const, Views... > ;
(5) (C++26부터)
constexpr /*iterator*/ & operator + = ( difference_type n )
requires /*concat-is-random-access*/ < Const, Views... > ;
(6) (C++26부터)
constexpr /*iterator*/ & operator - = ( difference_type n )
requires /*concat-is-random-access*/ < Const, Views... > ;
(7) (C++26부터)

반복자 를 증가시키거나 감소시킵니다.

오버로드 동등한 코드
(let I be it_  . index ( ) )
(1) ++ get-iter  < I > ( ) ; satisfy  < I > ( ) ; return * this ;
(2) ++* this ;
(3) auto tmp = * this ; ++* this ; return tmp ;
(4) prev  < I > ( ) ; return * this ;
(5) auto tmp = * this ; --* this ; return tmp ;
(6)

auto offset = get-iter  < I > ( ) - get-begin  < I > ( ) ;
if ( n > 0 )
advance-fwd  < I > ( offset, n ) ;
else if ( n < 0 )
advance-bwd  < I > ( offset, - n ) ;
return * this ;

(7) * this + = - n ; return * this ;

만약 it_  . valueless_by_exception ( ) true 라면, 동작은 정의되지 않습니다.

매개변수

n - 현재 위치 기준 상대 위치

반환값

위에서 설명한 바와 같습니다.

예제