Namespaces
Variants

std::ranges::enumerate_view<V>::end

cppreference.net에서 가져옴
 
 
Ranges 라이브러리
범위 어댑터
 
 
constexpr auto end() requires (!__simple_view<V>);
(1) (C++23부터)
constexpr auto end() const requires /*range-with-movable-references*/<const V>;
(2) (C++23부터)

iterator 또는 sentinel을 반환하며, 이는 enumerate_view의 끝 반복자와 같다고 비교됩니다.

base_을(를) 기본 뷰라고 합니다.

1) 다음과 동일:
if constexpr (ranges::forward_range<V> and 
              ranges::common_range<V>  and 
              ranges::sized_range<V>)
    return /*iterator*/<false>(ranges::end(base_), ranges::distance(base_));
else
    return /*sentinel*/<false>(ranges::end(base_));
2) 다음과 동일:
if constexpr (ranges::forward_range<const V> and 
              ranges::common_range<const V>  and 
              ranges::sized_range<const V>)
    return /*iterator*/<true>(ranges::end(base_), ranges::distance(base_));
else
    return /*sentinel*/<true>(ranges::end(base_));

매개변수

(없음)

반환값

위에서 설명한 대로 iterator 또는 sentinel 가 나타내는 enumerate_view 의 끝.

예제

결함 보고서

다음 동작 변경 결함 보고서는 이전에 게시된 C++ 표준에 소급 적용되었습니다.

DR 적용 대상 게시된 동작 올바른 동작
LWG 3919 C++23 ranges::distance 는 크기가 있는 공통
비-전방(forward) 기반 범위에 대해 UB를 유발할 수 있음
해당 범위에 대해 센티넬(sentinel) 타입이 반환됨

참고 항목

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