Namespaces
Variants

std::ranges::zip_transform_view<F,Views...>:: iterator

From cppreference.net
Ranges library
Range adaptors
template < bool Const >
class /*iterator*/ ;
(C++23부터)
( 설명 전용* )

가능한 const 한정된 zip_transform_view 의 반복자 유형으로, zip_transform_view::begin 과 특정 경우에 zip_transform_view::end 에 의해 반환됩니다.

타입 /*iterator*/ < true > 또는 /*iterator*/ < false > 는 각각 기본 뷰를 const 한정 또는 비-const 한정으로 처리합니다.

목차

멤버 타입

멤버 타입 정의
Parent (private) zip_transform_view 만약 Const false 인 경우, const zip_transform_view 그렇지 않은 경우.
( 설명 전용 멤버 타입* )
Base (private) InnerView 만약 Const false 이면 const InnerView 그렇지 않으면.
( 설명 전용 멤버 타입* )
iterator_category
(조건부 존재)

/*maybe-const*/ < Const, F > & const F & 를 나타낸다고 하자 (만약 Const true 인 경우), 그렇지 않으면 F & 를 나타낸다.
/*maybe-const*/ < Const, Views > const Views 를 나타낸다고 하자 (만약 Const true 인 경우), 그렇지 않으면 Views 를 나타낸다.

/*POT*/ 가 다음 타입들의 패크를 나타낸다고 하자: std:: iterator_traits < std :: iterator_t <
/*maybe-const*/ < Const, Views >>> :: iterator_category ...

만약 /*Base*/ forward_range 를 모델링하면, iterator_category 는 다음을 나타낸다:

가 참조 타입이 아닌 경우.
  • 그렇지 않으면,
( std:: derived_from < /*POT*/ , std:: random_access_iterator_tag > && ... ) true 인 경우.
( std:: derived_from < /*POT*/ , std:: bidirectional_iterator_tag > && ... ) true 인 경우.
( std:: derived_from < /*POT*/ , std:: forward_iterator_tag > && ... ) true 인 경우.

존재하지 않음 (만약 /*Base*/ forward_range 를 모델링하지 않는 경우).

iterator_concept /*지퍼레이터*/ < Const > :: iterator_concept
value_type

/*RREF*/ ranges:: range_reference_t < Views > ... 로,
그리고 /*CRREF*/ ranges:: range_reference_t < const Views > ... 로 정의합니다. 그러면:

difference_type range :: range_difference_t < /*Base*/ >

데이터 멤버

멤버 객체 정의
parent_ (private) 부모 객체에 대한 Parent* 포인터
( 설명 전용 멤버 객체* )
inner_ (private) ziperator<Const> 타입의 반복자.
( 설명 전용 멤버 타입* )

멤버 함수

반복자를 생성합니다
(public member function)
호출 가능 객체를 기본 포인터 요소들에 적용한 결과를 얻습니다
(public member function)
호출 가능 객체를 주어진 오프셋의 기본 요소들에 적용한 결과를 얻습니다
(public member function)
기본 반복자를 전진시키거나 후퇴시킵니다
(public member function)

비멤버 함수

기본 반복자를 비교함
(함수)
기본 반복자에 대해 반복자 연산을 수행함
(함수)

예제