Namespaces
Variants

std::ranges:: reserve_hint

From cppreference.net
Ranges library
Range adaptors
Definiert in Header <ranges>
Definiert in Header <iterator>
inline namespace /* unspecified */ {

inline constexpr auto reserve_hint = /* unspecified */ ;

}
(seit C++26)
(Customization Point Object)
Aufrufsignatur
template < class T >

requires /* siehe unten */

constexpr auto reserve_hint ( T && t ) ;
(seit C++26)

Schätzt die Anzahl der Elemente in t in konstanter Zeit.

Gegeben sei das Subexpression von dem t das (möglicherweise materialisierte ) Ergebnisobjekt als E bezeichnet, und der Typ von E als T :

  • Falls ranges:: size ( E ) ein gültiger Ausdruck ist, ist ranges :: reserve_hint ( E ) ausdrucksäquivalent zu ranges:: size ( E ) .
  • Andernfalls, falls auto ( t. reserve_hint ( ) ) ein gültiger Ausdruck vom integer-ähnlichen Typ ist, ist ranges :: reserve_hint ( E ) ausdrucksäquivalent zu auto ( t. reserve_hint ( ) ) .
  • Andernfalls, falls alle folgenden Bedingungen erfüllt sind, dann ist ranges :: reserve_hint ( E ) ausdrucksäquivalent zu auto ( reserve_hint ( t ) ) :
    • T ist ein Klassen- oder Aufzählungstyp.
    • auto ( reserve_hint ( t ) ) ein gültiger Ausdruck vom integer-ähnlichen Typ ist, wobei die Bedeutung von reserve_hint so festgelegt wird, als würde nur argumentabhängige Suche durchgeführt.
  • Andernfalls ist ranges :: reserve_hint ( E ) fehlerhaft.

Diagnostizierbare fehlerhafte Fälle oben führen zu Substitutionsfehler wenn ranges :: reserve_hint ( E ) im unmittelbaren Kontext einer Template-Instanziierung erscheint.

Inhaltsverzeichnis

Customization Point Objects

Der Name ranges::reserve_hint bezeichnet ein Customization Point Object , welches ein konstantes Function Object eines Literal semiregular Klassentyps ist. Weitere Details finden Sie unter CustomizationPointObject .

Hinweise

Immer wenn ranges :: reserve_hint ( e ) für einen Ausdruck e gültig ist, ist der Rückgabetyp integer-like .

Feature-Test Makro Wert Std Feature
__cpp_lib_ranges_reserve_hint 202502L (C++26) ranges::reserve_hint

Beispiel

Siehe auch

gibt einen ganzzahligen Wert gleich der Größe eines Ranges zurück
(Anpassungspunktobjekt)
gibt einen vorzeichenbehafteten ganzzahligen Wert gleich der Größe eines Ranges zurück
(Anpassungspunktobjekt)
spezifiziert, dass ein Range seine Größe in konstanter Zeit schätzen kann
(Konzept)