Namespaces
Variants

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

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

Retourne le nombre d'éléments, qui est le plus petit entre le nombre passé au constructeur et la taille de la vue sous-jacente.

Soit base_ la vue sous-jacente, count_ le compteur sous-jacent (égal à 0 s'il est construit par défaut). Équivalent à

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

Table des matières

Paramètres

(aucun)

Valeur de retour

Le nombre d'éléments.

Exemple

#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';
}

Sortie :

0 1 2 3 3 3

Voir aussi

renvoie un entier égal à la taille d'une plage
(objet point de personnalisation)
renvoie un entier signé égal à la taille d'une plage
(objet point de personnalisation)