Namespaces
Variants

operator- (std::counted_iterator<I>, std::default_sentinel_t)

From cppreference.net
Iterator library
Iterator concepts
Iterator primitives
Algorithm concepts and utilities
Indirect callable concepts
Common algorithm requirements
(C++20)
(C++20)
(C++20)
Utilities
(C++20)
Iterator adaptors
Range access
(C++11) (C++14)
(C++14) (C++14)
(C++11) (C++14)
(C++14) (C++14)
(C++17) (C++20)
(C++17)
(C++17)
friend constexpr std:: iter_difference_t < I > operator - (
const counted_iterator & x, std:: default_sentinel_t ) ;
(1) (desde C++20)
friend constexpr std:: iter_difference_t < I > operator - (
std:: default_sentinel_t , const counted_iterator & y ) ;
(2) (desde C++20)
1) Devuelve la distancia negativa al final.
2) Devuelve la distancia positiva hasta el final.

Esta plantilla de función no es visible para la búsqueda unqualified o qualified lookup ordinaria, y solo puede ser encontrada mediante argument-dependent lookup cuando std::counted_iterator<I> es una clase asociada de los argumentos.

Contenidos

Parámetros

x, y - adaptadores de iteradores para calcular la diferencia de

Valor de retorno

1) - x. count ( )
2) y. count ( )

Ejemplo

#include <initializer_list>
#include <iterator>
int main()
{
    constexpr static auto v = {1, 2, 3, 4};
    constexpr std::counted_iterator<std::initializer_list<int>::iterator>
        it{v.begin(), 3};
    constexpr auto d1 = it - std::default_sentinel;
    static_assert(d1 == -3); // (1)
    constexpr auto d2 = std::default_sentinel - it;
    static_assert(d2 == +3); // (2)
}

Véase también

avanza o decrementa el counted_iterator
(función miembro pública)
(C++20)
avanza el iterador
(plantilla de función)
(C++20)
calcula la distancia entre dos adaptadores de iterador
(plantilla de función)
centinela predeterminado para usar con iteradores que conocen el límite de su rango
(clase)