operator+,-(ranges::elements_view::iterator)
cppreference.net에서
friend constexpr /*iterator*/ operator+( const /*iterator*/& i, difference_type n )
requires ranges::random_access_range<Base>;
|
(1) | (C++20부터) |
friend constexpr /*iterator*/ operator+( difference_type n, const /*iterator*/& i )
requires ranges::random_access_range<Base>;
|
(2) | (C++20부터) |
friend constexpr /*iterator*/ operator-( const /*iterator*/& i, difference_type n )
requires ranges::random_access_range<Base>;
|
(3) | (C++20부터) |
friend constexpr difference_type operator-( const /*iterator*/& x,
const /*iterator*/& y )
requires std::sized_sentinel_for<ranges::iterator_t<Base>, ranges::iterator_t<Base>>;
|
(4) | (C++20부터) |
1,2) 반환한다 반복자
i 를 n 만큼 증가시킨 값을 반환한다.3) 반환한다 반복자
i 를 n 만큼 감소시킨 값을 반환한다.4)
x 와 y 사이의 거리를 반환합니다.이 함수들은 일반적인 비한정 또는 한정 조회에서 볼 수 없으며, 오직 인자 종속 조회를 통해서만 찾을 수 있습니다. elements_view::iterator<Const>는 인자의 연관 클래스입니다.
매개변수
| i, x, y | - | 반복자 |
| n | - | 현재 위치 기준 상대적 위치 |
반환값
1,2)
[
&
]
{
auto
j
=
i
;
j
+
=
n
;
return
j
;
}
(
)
3)
[
&
]
{
auto
j
=
i
;
j
-
=
n
;
return
j
;
}
(
)
4)
x.
base
(
)
-
y.
base
(
)
예제
|
이 섹션은 불완전합니다
이유: 예시가 없음 |
결함 보고서
다음의 동작 변경 결함 보고서들은 이전에 발표된 C++ 표준에 소급 적용되었습니다.
| DR | 적용 대상 | 게시된 동작 | 올바른 동작 |
|---|---|---|---|
| LWG 3483 | C++20 |
elements_view::iterator
의 차이 연산이 과도하게 제약됨
|
요구 사항이 완화됨 |