std::ranges::chunk_view<V>:: iterator <Const>:: operator++,--,+=,-=
From cppreference.net
<
cpp
|
ranges
|
chunk view
|
iterator
C++
Ranges library
|
||||||||||||||||||||||
| Range primitives | |||||||
|
|||||||
| Range concepts | |||||||||||||||||||
|
|||||||||||||||||||
| Range factories | |||||||||
|
|||||||||
| Range adaptors | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||
| Helper items | |||||||||||||||||
|
|
||||||||||||||||
std::ranges::chunk_view
| Member functions | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
(C++26)
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
constexpr
/*iterator*/
&
operator
++
(
)
;
|
(1) | (C++23부터) |
|
constexpr
/*iterator*/
operator
++
(
int
)
;
|
(2) | (C++23부터) |
|
constexpr
/*iterator*/
&
operator
--
(
)
requires ranges:: bidirectional_range < Base > ; |
(3) | (C++23부터) |
|
constexpr
/*iterator*/
operator
--
(
int
)
requires ranges:: bidirectional_range < Base > ; |
(4) | (C++23부터) |
|
constexpr
/*iterator*/
&
operator
+
=
(
difference_type x
)
requires ranges:: random_access_range < Base > ; |
(5) | (C++23부터) |
|
constexpr
/*iterator*/
&
operator
-
=
(
difference_type x
)
requires ranges:: random_access_range < Base > ; |
(6) | (C++23부터) |
iterator 를 증가시키거나 감소시킵니다.
current_
,
end_
, 그리고
n_
를
데이터 멤버
의 기반이 되는
chunk_view::iterator
라고 가정합니다.
1)
다음과 동일함:
호출 전에 표현식
current_
!
=
end_
가
true
여야 하며, 그렇지 않을 경우 동작은 정의되지 않음.
missing_ = ranges::advance(current_, n_, end_); return *this;
2)
다음과 동일함:
auto
tmp
=
*
this
;
++*
this
;
return
tmp
;
.
3)
동등한 표현:
ranges::advance(current_, missing_ - n_); missing_ = 0; return *this;
4)
다음과 동일함:
auto
tmp
=
*
this
;
--*
this
;
return
tmp
;
.
5)
동등한 코드:
만약
x
가 양수인 경우, 호출 전에 다음 표현식이
ranges::
distance
(
current_, end_
)
>
n_
*
(
x
-
1
)
true
여야 합니다 (즉, 비공식적으로 요청된 청크가 기본 시퀀스 "내부"에 위치해야 함).
x
가 음수인 경우, 이 사전 조건은 항상 충족됩니다.
if (x > 0) { ranges::advance(current_, n_ * (x - 1)); missing_ = ranges::advance(current_, n_, end_); } else if (x < 0) { ranges::advance(current_, n_ * x + missing_); missing_ = 0; } return *this;
6)
동등한 표현:
return
*
this
+
=
-
x
;
.
목차 |
매개변수
| x | - | 현재 위치 기준 상대적 위치 |
반환값
1,3,5,6)
*
this
2,4)
변경 전에 생성된
*
this
의 사본
예제
|
이 섹션은 불완전합니다
이유: 예제가 없음 |
참고 항목
|
(C++23)
|
반복자 연산 수행
(함수) |