Namespaces
Variants

std::ranges::join_view<V>:: iterator <Const>:: iterator

From cppreference.net
Ranges library
Range adaptors
/*iterator*/ ( ) requires std:: default_initializable < OuterIter > &&
std:: default_initializable < InnerIter > = default ;
(1) (C++20 이후)
constexpr /*iterator*/ ( Parent & parent, OuterIter outer ) ;
(2) (C++20 이후)
constexpr /*iterator*/ ( /*iterator*/ < ! Const > i )

requires Const &&
std:: convertible_to < ranges:: iterator_t < V > , OuterIter > &&

std:: convertible_to < ranges:: iterator_t < InnerRng > , InnerIter > ;
(3) (C++20 이후)

반복자를 생성합니다.

1) 기본 생성자. 값 초기화 를 통해 기본 반복자를 초기화하고, 부모 ranges::join_view 의 포인터를 nullptr 로 초기화합니다.
2) 기본 outer_ 반복자를 std :: move ( outer ) 로 초기화하고, 부모 parent_ 포인터를 std:: addressof ( parent ) 로 초기화한 후 satisfy() 를 호출합니다.
3) /*iterator*/ < false > /*iterator*/ < true > 로 변환합니다. 기본 반복자 outer_ std :: move ( i. outer_ ) 로, inner_ std :: move ( i. inner_ ) 로, 기본 부모 포인터 parent_ i. parent_ 로 이동 생성합니다.

매개변수

parent - (const 한정자가 있을 수 있는) ranges::join_view
outer - (const 한정자가 있을 수 있는) ranges:: iterator_t < Base > 를 가리키는 반복자
i - /*iterator*/ < false > 타입의 반복자

예제