Namespaces
Variants

std::ranges::chunk_view<V>:: end

From cppreference.net
Ranges library
Range adaptors
std::ranges::chunk_view
Member functions
chunk_view::end
Classes for input_range s
Deduction guides
outer-iterator
outer-iterator ::value_type
inner-iterator
V input_range 만 모델인 경우
constexpr std:: default_sentinel_t end ( ) const noexcept ;
(1) (C++23부터)
V forward_range 를 모델인 경우
constexpr auto end ( ) requires ( ! __simple_view < V > ) ;
(2) (C++23부터)
constexpr auto end ( ) const requires ranges:: forward_range < const V > ;
(3) (C++23부터)

반복자 또는 std::default_sentinel 를 반환하며, 이는 chunk_view 의 끝 반복자와 비교 시 동일함을 나타냅니다.

1) 다음 경우에만 사용 가능: V input_range 를 모델로 할 때. 다음 코드와 동등함: return std:: default_sentinel .
2,3) 다음의 경우에 사용 가능: V forward_range 를 모델로 할 때. base_ 는 기본이 되는 적응된 뷰를, n_ 는 저장된 청크 크기를, iterator 는 중첩된 반복자 클래스를 나타낸다.
2) 다음 코드와 동일함
if constexpr (ranges::common_range<V> && ranges::sized_range<V>)
{
    auto missing = (n_ - ranges::distance(base_) % n_) % n_;
    return iterator<false>(this, ranges::end(base_), missing);
}
else if constexpr (ranges::common_range<V> && !ranges::bidirectional_range<V>)
    return iterator<false>(this, ranges::end(base_));
else
    return std::default_sentinel;
3) 다음과 동등함
if constexpr (ranges::common_range<const V> && ranges::sized_range<const V>)
{
    auto missing = (n_ - ranges::distance(base_) % n_) % n_;
    return iterator<true>(this, ranges::end(base_), missing);
}
else if constexpr (ranges::common_range<const V> && !ranges::bidirectional_range<const V>)
    return iterator<true>(this, ranges::end(base_));
else
    return std::default_sentinel;

반환값

위에서 설명한 대로 chunk_view 의 끝을 나타내는 반복자 또는 센티널입니다.

예제

참고 항목

시작을 가리키는 반복자를 반환합니다
(public member function)
범위의 끝을 나타내는 센티널을 반환합니다
(customization point object)