std::ranges::reserve_hint
| Défini dans l'en-tête <ranges>
|
||
| Défini dans l'en-tête <iterator>
|
||
inline namespace /* unspecified */ {
inline constexpr auto reserve_hint = /* unspecified */;
}
|
(depuis C++26) (objet point de personnalisation) |
|
| Signature d'appel |
||
template< class T >
requires /* see below */
constexpr auto reserve_hint( T&& t );
|
(depuis C++26) | |
Estime le nombre d'éléments dans t en temps constant.
Étant donné la sous-expression dont t désigne l'objet résultat (éventuellement matérialisé) sous le nom E, et le type de E sous le nom T:
- Si
ranges::size(E)est une expression valide,ranges::reserve_hint(E)est équivalent à l'expressionranges::size(E). - Sinon, si
auto(t.reserve_hint())est une expression valide de type semblable à un entier,ranges::reserve_hint(E)est équivalent à l'expressionauto(t.reserve_hint()). - Sinon, si toutes les conditions suivantes sont satisfaites, alors
ranges::reserve_hint(E)est équivalent à l'expressionauto(reserve_hint(t)):Test un type classe ou énumération.auto(reserve_hint(t))est une expression valide de type semblable à un entier, où la signification dereserve_hintest établie comme si par recherche dépendante des arguments uniquement.
- Sinon,
ranges::reserve_hint(E)est mal formé.
Les cas mal formés diagnostics ci-dessus entraînent un échec de substitution lorsque ranges::reserve_hint(E) apparaît dans le contexte immédiat d'une instanciation de modèle.
Objets de point de personnalisation
Le nom
ranges::reserve_hint
désigne un
objet de point de personnalisation
, qui est un
objet fonction
constant d'un type de classe
littéral
semiregular
. Voir
CustomizationPointObject
pour plus de détails.
Notes
Chaque fois que ranges :: reserve_hint ( e ) est valide pour une expression e , le type de retour est integer-like .
| Macro de test de fonctionnalité | Valeur | Std | Fonctionnalité |
|---|---|---|---|
__cpp_lib_ranges_reserve_hint
|
202502L
|
(C++26) | ranges::reserve_hint |
Exemple
|
Cette section est incomplète
Raison : aucun exemple |
Voir aussi
|
(C++20)
|
retourne un entier égal à la taille d'une plage
(objet de point de personnalisation) |
|
(C++20)
|
retourne un entier signé égal à la taille d'une plage
(objet de point de personnalisation) |
|
spécifie qu'une plage peut estimer sa taille en temps constant
(concept) |