Namespaces
Variants

std::ranges::take_view<V>:: size

From cppreference.net
Ranges library
Range adaptors
constexpr auto size ( ) requires ranges:: sized_range < V > ;
(1) (C++20 이후)
constexpr auto size ( ) const requires ranges:: sized_range < const V > ;
(2) (C++20 이후)

생성자에 전달된 개수와 기본 뷰의 크기 중 더 작은 값을 요소의 개수로 반환합니다.

base_ 를 기본 뷰로, count_ 를 기본 카운터로 설정합니다(기본 생성 시 0 과 동일). 다음 코드와 동일합니다:

auto n = ranges::size(base_);
return ranges::min(n, static_cast<decltype(n)>(count_));

목차

매개변수

(없음)

반환값

요소의 개수.

예제

#include <iostream>
#include <ranges>
int main()
{
    constexpr int arr[]{1, 2, 3};
    for (int i = 0; i != 6; ++i)
    {
        const auto tv = std::ranges::take_view{arr, i};
        std::cout << tv.size() << ' ';
    }
    std::cout << '\n';
}

출력:

0 1 2 3 3 3

참고 항목

범위의 크기와 같은 정수를 반환합니다
(customization point object)
범위의 크기와 같은 부호 있는 정수를 반환합니다
(customization point object)