std::ranges::chunk_view<V>::iterator<Const>::operator++,--,+=,-=
cppreference.net에서
constexpr /*iterator*/& operator++();
|
(3) | (C++23 이후) |
constexpr /*iterator*/ operator++( int );
|
(4) | (C++23 이후) |
constexpr /*iterator*/& operator--()
requires ranges::bidirectional_range<Base>;
|
(5) | (C++23 이후) |
constexpr /*iterator*/ operator--( int )
requires ranges::bidirectional_range<Base>;
|
(6) | (C++23 이후) |
constexpr /*iterator*/& operator+=( difference_type x )
requires ranges::random_access_range<Base>;
|
전진시키거나 감소시킵니다 | iterator |
constexpr /*iterator*/& operator-=( difference_type x )
requires ranges::random_access_range<Base>;
|
. | |
parent_, current_, n_를
의 기본 current_데이터 멤버end_로 n_iterator.
1)chunk_view::iterator 다음과 동등합니다:
호출 전에 표현식 은(는) 이어야 하며, 그렇지 않으면 동작이 정의되지 않습니다.
missing_ = ranges::advance(current_, n_, end_);
return *this;
current_ != end_2)true 다음과 동등합니다: .3)
auto tmp = *this; ++*this; return tmp; 다음과 동등합니다:
4) 다음과 동등합니다:
ranges::advance(current_, missing_ - n_);
missing_ = 0;
return *this;
.5)
auto tmp = *this; --*this; return tmp; 다음과 동등합니다:
이 양수이면 호출 전에 표현식 은(는)
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;
x이어야 합니다(즉, 비공식적으로 요청된 청크가 기본 시퀀스 "내부"에 있어야 합니다). ranges::distance(current_, end_) > n_ * (x - 1)이 음수이면 이 전제 조건은 항상 충족됩니다.true6)x 다음과 동등합니다: .
return *this += -x;매개변수
| x | - | 현재 위치 기준 상대적 위치 |
반환값
1,3,5,6)
*
this
2,4)
변경 전에 생성된
*
this
의 사본
예제
|
이 섹션은 불완전합니다
이유: 예제가 없음 |
참고 항목
|
(C++23)
|
반복자 연산 수행
(함수) |