std::ranges::enumerate_view<V>::end
cppreference.net에서 가져옴
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) |
|
|
(C++20)
|
범위의 끝을 나타내는 센티널을 반환합니다
(customization point object) |