Namespaces
Variants

std::ranges::iterator_t, std::ranges::const_iterator_t, std::ranges::sentinel_t, std::ranges::const_sentinel_t

cppreference.net에서 가져옴
 
 
Ranges 라이브러리
Range 어댑터
 
헤더 <ranges>
template< class T >
using iterator_t = decltype(ranges::begin(std::declval<T&>()));
에 정의됨 (1) (C++20부터)
template< ranges::range R >
using const_iterator_t = decltype(ranges::cbegin(std::declval<R&>()));
(2) (C++23부터)
template< ranges::range R >
using sentinel_t = decltype(ranges::end(std::declval<R&>()));
(3) (C++20부터)
template< ranges::range R >
using const_sentinel_t = decltype(ranges::cend(std::declval<R&>()));
(4) (C++23부터)
1) 유형 T의 반복자 유형을 얻는 데 사용됩니다.
2) range 유형 R의 상수 반복자 유형을 얻는 데 사용됩니다.
3) range 유형 R의 센티널 유형을 얻는 데 사용됩니다.
4) range 유형 R의 상수 센티널 유형을 얻는 데 사용됩니다.

템플릿 매개변수

T - std::ranges::begin 에 사용할 수 있는 타입
R - range 타입 또는 sized_range 타입

참고 사항

iterator_t 는 비-범위(non-range) 타입에도 적용할 수 있습니다. 예를 들어, 경계를 알 수 없는 배열 등이 있습니다.

결함 보고서

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

DR 적용 대상 게시된 동작 올바른 동작
LWG 3946 C++23 const_iterator_t 와 const_sentinel_t 가 각각 ranges::cbegin 과 ranges::cend 의 결과와 일관되지 않았음 수정됨

참고 항목

반복자의 연관된 타입들을 계산함
(별칭 템플릿)
범위의 크기, 차이 및 값 타입들을 획득함
(별칭 템플릿)
범위의 참조 타입들을 획득함
(별칭 템플릿)