Namensräume
Varianten
Aktionen

std::ranges::range_reference_t, std::ranges::range_const_reference_t, std::ranges::range_rvalue_reference_t, std::ranges::range_common_reference_t

Von cppreference.com
< cpp‎ | ranges
 
 
Bereichsbibliothek
Range-Primitive
range_reference_trange_const_reference_trange_rvalue_reference_trange_common_reference_t
(C++23)
Range-Adaptoren
 
Definiert in der Header-Datei <ranges>
template< ranges::range R >
using range_reference_t = std::iter_reference_t<ranges::iterator_t<R>>;
(1) (seit C++20)
template< ranges::range R >

using range_const_reference_t =

    std::iter_const_reference_t<ranges::iterator_t<R>>;
(2) (seit C++23)
template< ranges::range R >

using range_rvalue_reference_t =

    std::iter_rvalue_reference_t<ranges::iterator_t<R>>;
(3) (seit C++20)
template< ranges::range R >

using range_common_reference_t =

    std::iter_common_reference_t<ranges::iterator_t<R>>;
(4) (seit C++20)
1) Wird verwendet, um den Referenztyp des Iterator-Typs des Range-Typs R zu erhalten.
2) Wird verwendet, um den konstanten Referenztyp des Iterator-Typs des Range-Typs R zu erhalten.
3) Wird verwendet, um den Rvalue-Referenztyp des Iterator-Typs des Range-Typs R zu erhalten.
4) Wird verwendet, um den gemeinsamen Referenztyp des Iterator-Typs des Range-Typs R zu erhalten.

[bearbeiten] Template-Parameter

R - ein range-Typ oder ein sized_range-Typ

[bearbeiten] Defect Reports

Die folgenden Verhaltensändernden Fehlerberichte wurden rückwirkend auf zuvor veröffentlichte C++-Standards angewendet.

DR angewendet auf Verhalten wie veröffentlicht Korrigiertes Verhalten
LWG 3860 C++20 range_common_reference_t fehlte hinzugefügt

[bearbeiten] Siehe auch

berechnet die zugehörigen Typen eines Iterators
(Alias-Schablone)[bearbeiten]
ermittelt Iterator- und Sentinel-Typen eines Ranges
(Alias-Template)[edit]
ermittelt Größen-, Differenz- und Wertetypen eines Ranges
(Alias-Template)[edit]