std:: incrementable
|
Definido en el encabezado
<iterator>
|
||
|
template
<
class
I
>
concepto incrementable
=
|
(desde C++20) | |
Este concepto especifica requisitos sobre tipos que pueden ser incrementados con los operadores de preincremento y postincremento, cuyas operaciones de incremento son equality-preserving , y el tipo es std::equality_comparable .
A diferencia de
std::weakly_incrementable
, que solo admite algoritmos de una sola pasada, los algoritmos unidireccionales multipasada pueden utilizarse con tipos que modelan
std::incrementable
.
Requisitos semánticos
I
modela
std::incrementable
solo si dados dos objetos incrementables
a
y
b
de tipo
I
:
- bool ( a == b ) implica bool ( a ++ == b ) , y
- bool ( a == b ) implica bool ( ( ( void ) a ++ , a ) == ++ b ) .
Preservación de igualdad
Las expresiones declaradas en las requires expressions de los conceptos de la biblioteca estándar deben ser equality-preserving (excepto cuando se indique lo contrario).
Véase también
|
(C++20)
|
especifica que un
semiregular
tipo puede ser incrementado con operadores de pre- y post-incremento
(concepto) |
|
(C++20)
|
especifica que un tipo es el mismo que otro tipo
(concepto) |