Espacios de nombres
Variantes
Acciones

std::ranges::contiguous_range

De cppreference.com
< cpp‎ | ranges
 
 
Biblioteca de rangos
Adaptadores de rangos
 
Definido en el archivo de encabezado <ranges>
template< class T >

  concept contiguous_range =
    ranges::random_access_range<T> &&
    std::contiguous_iterator<ranges::iterator_t<T>> &&
    requires(T& t) {
      { ranges::data(t) } ->
        std::same_as<std::add_pointer_t<ranges::range_reference_t<T>>>;

    };
(desde C++20)

El concepto contiguous_range es un refinamiento de range para el que ranges::begin devuelve un modelo de contiguous_iterator y el punto de personalización ranges::data es usable.

[editar] Requerimientos semánticos

T modela contiguous_range solo si una expresión dada e tal que decltype((e)) es T&, std::to_address(ranges::begin(e)) == ranges::data(e).