Namespaces
Variants

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

cppreference.net에서
 
 
Ranges 라이브러리
Range 어댑터
 
std::ranges::chunk_view
멤버 함수
input_range에 대한 클래스
추론 가이드
outer-iterator
outer-iterator::value_type
inner-iterator
 
/*iterator*/() = default;
(1) (C++23부터)
constexpr /*iterator*/( /*iterator*/<!Const> i )
    requires
        Const and
        std::convertible_to<ranges::iterator_t<V>, ranges::iterator_t<Base>> and
        std::convertible_to<ranges::sentinel_t<V>, ranges::sentinel_t<Base>>;
(2) (C++23부터)
private:
constexpr /*iterator*/( Parent* parent,
                        ranges::iterator_t<Base> current,
                        ranges::range_difference_t<Base> missing = 0 );
(3) (*설명 전용*)

반복자를 생성합니다.

1) 기본 생성자. 값 초기화합니다. 기본 데이터 멤버:
  • current_을(를) ranges::iterator_t<Base>()으로 초기화,
  • end_을(를) ranges::sentinel_t<Base>()으로 초기화,
  • n_을(를) 0으로 초기화,
  • missing_을(를) 0으로 초기화.
2) /*iterator*/<false>에서 /*iterator*/<true>로의 변환. 기본 데이터 멤버:
  • current_을(를) std::move(i.current_)으로 초기화,
  • end_을(를) std::move(i.end_)으로 초기화,
  • n_을(를) i.n_으로 초기화,
  • missing_을(를) i.missing_으로 초기화.
3) ranges::chunk_view::begin과 ranges::chunk_view::end에서 사용하는 비공개 생성자입니다. 이 생성자는 사용자가 접근할 수 없습니다. 기본 데이터 멤버:
  • current_을(를) current으로 초기화,
  • end_을(를) ranges::end(parent->base_)으로 초기화,
  • n_을(를) parent->n_으로 초기화,
  • missing_을(를) missing으로 초기화.

매개변수

i - an /*iterator*/ < false >
parent - owning chunk_view 를 가리키는 포인터
current - 현재 청크의 시작을 가리키는 반복자
missing - 현재 청크의 예상 크기( n_ )와 실제 크기 사이의 차이

예제