std::ranges:: reserve_hint
|
Definido en el encabezado
<ranges>
|
||
|
Definido en el encabezado
<iterator>
|
||
|
inline
namespace
/* unspecified */
{
inline
constexpr
auto
reserve_hint
=
/* unspecified */
;
|
(desde C++26)
(objeto de punto de personalización) |
|
|
Firma de llamada
|
||
|
template
<
class
T
>
requires
/* see below */
|
(desde C++26) | |
Calcula el número de elementos en t en tiempo constante.
Dada la
subexpresión
de la cual
t
denota el objeto resultante (posiblemente
materializado
) como
E
, y el tipo de
E
como
T
:
- Si ranges:: size ( E ) es una expresión válida, ranges :: reserve_hint ( E ) es equivalente-expresión a ranges:: size ( E ) .
- En caso contrario, si auto ( t. reserve_hint ( ) ) es una expresión válida de tipo entero-like , ranges :: reserve_hint ( E ) es equivalente-expresión a auto ( t. reserve_hint ( ) ) .
-
En caso contrario, si se satisfacen todas las siguientes condiciones, entonces
ranges
::
reserve_hint
(
E
)
es equivalente-expresión a
auto
(
reserve_hint
(
t
)
)
:
-
Tes un tipo clase o enumeración. -
auto
(
reserve_hint
(
t
)
)
es una expresión válida de tipo entero-like, donde el significado de
reserve_hintse establece como si se realizara únicamente búsqueda dependiente de argumento .
-
- En caso contrario, ranges :: reserve_hint ( E ) está mal formado.
Los casos incorrectos diagnosticables anteriores resultan en fallo de sustitución cuando ranges :: reserve_hint ( E ) aparece en el contexto inmediato de una instanciación de plantilla.
Contenidos |
Objetos de punto de personalización
El nombre
ranges::reserve_hint
denota un
objeto de punto de personalización
, que es un
objeto función
constante de tipo clase
literal
semiregular
. Consulte
CustomizationPointObject
para más detalles.
Notas
Siempre que ranges :: reserve_hint ( e ) sea válido para una expresión e , el tipo de retorno es integer-like .
| Macro de prueba de características | Valor | Estándar | Característica |
|---|---|---|---|
__cpp_lib_ranges_reserve_hint
|
202502L
|
(C++26) | ranges::reserve_hint |
Ejemplo
|
Esta sección está incompleta
Motivo: sin ejemplo |
Véase también
|
(C++20)
|
devuelve un entero igual al tamaño de un rango
(objeto de punto de personalización) |
|
(C++20)
|
devuelve un entero con signo igual al tamaño de un rango
(objeto de punto de personalización) |
|
especifica que un rango puede estimar su tamaño en tiempo constante
(concepto) |