operator+,-(ranges::cartesian_product_view::iterator)
cppreference.net에서
friend constexpr /*iterator*/ operator+( const /*iterator*/& i,
difference_type n )
requires /*cartesian-product-is-random-access*/<Const, First, Vs...>;
|
(C++23부터) | (2) |
friend constexpr /*iterator*/ operator+( difference_type n,
const /*iterator*/& i )
requires /*cartesian-product-is-random-access*/<Const, First, Vs...>;
|
(C++23부터) | (3) |
friend constexpr /*iterator*/ operator-( const /*iterator*/& i,
difference_type n )
requires /*cartesian-product-is-random-access*/<Const, First, Vs...>;
|
(C++23부터) | (4) |
friend constexpr difference_type operator-( const /*iterator*/& i,
const /*iterator*/& j )
requires
/*cartesian-is-sized-sentinel*/<Const, iterator_t, First, Vs...>;
|
(C++23부터) | (5) |
friend constexpr difference_type operator-( const /*iterator*/& i,
std::default_sentinel_t )
requires
/*cartesian-is-sized-sentinel*/<Const, ranges::sentinel_t, First, Vs...>;
|
(C++23부터) | (6) |
friend constexpr difference_type operator-( std::default_sentinel_t s,
const /*iterator*/& i )
requires
/*cartesian-is-sized-sentinel*/<Const, ranges::sentinel_t, First, Vs...>;
|
(C++23부터) | |
반복자 산술을 수행하거나 거리를 계산합니다.
current_가 밑에 있는 반복자들의 튜플을 나타내고, parent_이가 cartesian_product_view에 대한 밑에 있는 포인터를 나타낸다고 하자.
1) 다음과 동등함:
return /*iterator*/(i) += n;. 2) 다음과 동등함:
return i + n;. 3) 다음과 동등함:
return /*iterator*/(i) -= n;. 4) 다음과 동등함:
return i.distance_from(j.current_);. 5)
/*end-tuple*/는 std::tuple의 특수화인 형식의 객체라고 하자. 이때: std::get<0>(/*end-tuple*/)는ranges::end(std::get<0>(i.parent_->bases_));std::get<N>(/*end-tuple*/)와 같은 값을 가지며,ranges::begin(std::get<N>(i.parent_->bases_))는 모든 정수1 ≤ N ≤ sizeof...(Vs)에 대해 같은 값을 가진다.
return i.distance_from(/*end-tuple*/);. 6) 다음과 동등함:
return -(i - s);. 이 함수들은 일반적인 비한정 또는 한정 조회로는 보이지 않으며, 인수 종속 조회에 의해서만 찾을 수 있습니다. cartesian_product_view::iterator<Const>가 인수의 연관된 클래스일 때
매개변수
| i, j | - | 반복자 |
| n | - | 현재 위치 기준 상대 위치 |
| s | - | 센티넬 |
반환값
1,2)
증가된 반복자.
3)
감소된(decremented) 반복자(iterator).
4)
주어진 반복자 사이의 거리.
5,6)
주어진 반복자와 센티널 간의 거리.
예제
|
이 섹션은 불완전합니다
이유: 예제가 없음 |
참고 항목
|
기본 반복자를 진행 또는 감소시킴
(public member function) |