ranges_reverse_view

ranges_reverse_view (역순 뷰)

std::ranges::reverse_view은 기본 양방향 뷰를 역순으로 순회하는 뷰예요. C++20부터 사용할 수 있어요.

출처: cppreference

본문

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

template< ranges::view V >
    requires ranges::bidirectional_range<V>
class reverse_view
    : public ranges::view_interface<reverse_view<V>>

(1) (since C++20)

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

(2) (since C++20)

호출 시그니처:

template< ranges::viewable_range R >
    requires /* see below */
constexpr ranges::view auto reverse( R&& r );
    1. 기본 양방향 뷰 V를 역순으로 순회하는 뷰.
    1. reverse 뷰를 생성하는 뷰 팩토리 객체.

멤버 함수 (Member functions)

  • (constructor) — reverse 뷰 생성
  • base — 기본 뷰 반환
  • begin / end — 역방향 반복자/센티널 반환
  • size — 크기 반환 (sized일 때)

예제 (Example)

이 코드를 실행해 봐요.

#include <ranges>
#include <vector>
#include <iostream>

int main()
{
    std::vector<int> v{1, 2, 3, 4};
    for (int x : v | std::views::reverse)
        std::cout << x << ' '; // 4 3 2 1
}

더 알아보기 (Learn more)

cppreference