ranges_cache_latest_view

ranges_cache_latest_view (최신 캐시 뷰)

std::ranges::cache_latest_view은 기본 뷰의 마지막 참조 요소의 복사본을 캐시해, 프록시 참조가 문제없이 다중 역참조될 수 있게 하는 뷰예요. C++26부터 사용할 수 있어요.

출처: cppreference

본문

<ranges> 헤더에 정의되어 있고, 시그니처는 다음과 같아요.

template< ranges::input_range V >
    requires ranges::view<V>
class cache_latest_view
    : public ranges::view_interface<cache_latest_view<V>>

(1) (since C++26)

namespace views {
    inline constexpr /* unspecified */ cache_latest = /* unspecified */;
}

(2) (since C++26)

    1. 기본 뷰 V의 마지막으로 역참조된 요소의 복사본을 캐시해서, 프록시 참조(예: zip_view의 튜플)가 역참조 후에도 계속 유효하도록 하는 뷰.
    1. cache_latest 뷰를 생성하는 뷰 팩토리 객체.

멤버 함수 (Member functions)

  • (constructor) — cache_latest 뷰 생성
  • base — 기본 뷰 반환
  • begin / end — 반복자/센티널 반환

참고 (Notes)

views::cache_latest(r)로 생성해요. 참조 유효성이 우려되는 프록시 참조 기반 뷰(예: zip)에 유용해요.

더 알아보기 (Learn more)

cppreference