Namespaces
Variants

std::ranges::slide_view<V>::iterator<Const>::iterator

cppreference.net에서 가져옴
 
 
Ranges 라이브러리
Range 어댑터
 
 
/*iterator*/();
(1) (C++23부터)
constexpr /*iterator*/( /*iterator*/<!Const> i )
    requires Const &&
        std::convertible_to<ranges::iterator_t<V>, ranges::iterator_t<Base>>
(2) (C++23부터)
private:
constexpr /*iterator*/( ranges::iterator_t<Base> current,
                        ranges::range_difference_t<Base> n )
    requires (!/*slide-caches-first*/<Base>);
(3) (설명 전용*)
private:
constexpr /*iterator*/( ranges::iterator_t<Base> current,
                        ranges::iterator_t<Base> last_ele,
                        ranges::range_difference_t<Base> n )
    requires /*slide-caches-first*/<Base>;
(4) (설명 전용*)

반복자를 생성합니다.

1) 기본 생성자. 값 초기화된 기본 데이터 멤버들:
  • current_ 은 ranges::iterator_t<Base>()로,
  • last_ele_ 은 ranges::iterator_t<Base>()로 (이 멤버는 존재하지 않을 수 있음),
  • n_ 은 0로 초기화합니다.
2) /*iterator*/<false>에서 /*iterator*/<true>로의 변환. 기본 데이터 멤버들을 초기화합니다:
  • current_ 은 std::move(i.current_)로,
  • n_ 은 i.n_로 초기화합니다.
/*iterator*/<true>는 Base이 /*slide-caches-nothing*/를 모델링할 때만 생성될 수 있으며, 이 경우 last_ele_은 존재하지 않습니다.
3) ranges::slide_view::begin과 ranges::slide_view::end에서 사용하는 비공개 생성자입니다. 이 생성자는 사용자가 접근할 수 없습니다. 기본 데이터 멤버들을 초기화합니다:
  • current_ 은 current로,
  • n_ 은 n로 초기화합니다.
이 오버로드는 last_ele_이 존재하지 않는 경우에만 존재할 수 있습니다.
4) ranges::slide_view::begin과 ranges::slide_view::end에서 사용하는 비공개 생성자입니다. 이 생성자는 사용자가 접근할 수 없습니다. 기본 데이터 멤버들을 초기화합니다:
  • current_ 은 current로,
  • last_ele_ 은 last_ele로 (이 데이터 멤버는 /*slide-caches-first*/<Base> 요구 사항 때문에 존재함),
  • n_ 은 n로 초기화합니다.

매개변수

i - an /*iterator*/ < false >
current - slide_view 의 현재 요소에 대한 iterator
last_ele - slide_view 의 마지막 요소에 대한 iterator
n - slide_view 의 슬라이딩 윈도우 너비

예제