Namespaces
Variants

std::ranges::stride_view<V>:: begin

From cppreference.net
Ranges library
Range adaptors
constexpr auto begin ( ) requires ( ! __simple_view < V > ) ;
(1) (C++23 이후)
constexpr auto begin ( ) const requires ranges:: range < const V > ;
(2) (C++23 이후)

stride_view 의 첫 번째 요소에 대한 iterator 를 반환합니다.

1) 다음에 해당함 return iterator < false > ( this, ranges:: begin ( base_ ) ) ; .
2) 다음과 동등함 return iterator < true > ( this, ranges:: begin ( base_ ) ) ; .

오버로드 (1) V 단순 뷰(simple view) 인 경우(즉, V const V 가 동일한 반복자와 센티넬 타입을 가진 뷰인 경우) 오버로드 결정에 참여하지 않습니다.

목차

매개변수

(없음)

반환값

Iterator 뷰의 첫 번째 요소에 대한 반복자입니다.

예제

테스트 링크: Compiler Explorer .

#include <print>
#include <ranges>
int main()
{
    constexpr auto v = {'A', 'B', 'C'};
    const auto x = v | std::views::stride(2);
    const auto y = v | std::views::reverse | std::views::stride(2);
    const auto z = v | std::views::stride(2) | std::views::reverse;
    std::println("{} {} {}", *x.begin(), *y.begin(), *z.begin());
}

출력:

A C C

참고 항목

끝을 가리키는 반복자 또는 센티널을 반환합니다
(public member function)