Namespaces
Variants

std::ranges::zip_transform_view<F,Views...>::iterator<Const>::operator*

cppreference.net에서
 
 
범위 라이브러리
범위 어댑터
 
 
constexpr decltype(auto) operator*() const
    noexcept(/* see description */);
(C++23부터)

기본 요소에 대한 포인터 역참조를 통해 얻은 요소에 F 형식의 호출 가능 객체를 적용하여 변환된 요소를 반환합니다.

다음과 동등합니다:

return
    std::apply
    (
        [&](auto const&... iters) -> decltype(auto)
        {
            return std::invoke(*parent_->fun_, *iters...);
        },
        inner_.current_
    );

여기서 *parent_->fun_는 부모 ranges::zip_transform_view에 저장된 변환 함수이고, current_는 Views...에 대한 반복자의 기본 튜플입니다.

매개변수

(없음)

반환값

변환(매핑)의 결과인 요소입니다.

예외

noexcept 명세:
noexcept ( std:: invoke ( * parent_ - > fun_, * std :: get < INTS > ( inner_. current_ ) ... ) )
여기서 INTS 는 정수 패킹 0, 1, ..., (sizeof...(Views)-1) 을 의미합니다.

참고 사항

operator - > 는 제공되지 않습니다.

parent_ 포인터가 부모 ranges::zip_transform_view 를 가리키는 경우, 해당 포인터가 null일 때(예: * this 가 기본 생성된 경우)의 동작은 정의되지 않습니다.

예제