名前空間
変種
操作

std::ranges::range_reference_t、std::ranges::range_const_reference_t、std::ranges::range_rvalue_reference_t、std::ranges::range_common_reference_t

From cppreference.com
< cpp‎ | ranges
 
 
Rangesライブラリ
Rangeプリミティブ
range_reference_trange_const_reference_trange_rvalue_reference_trange_common_reference_t
(C++23)
Rangeアダプタ
 
ヘッダ <ranges> で定義
template< ranges::range R >
using range_reference_t = std::iter_reference_t<ranges::iterator_t<R>>;
(1) (C++20以降)
template< ranges::range R >

using range_const_reference_t =

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

using range_rvalue_reference_t =

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

using range_common_reference_t =

    std::iter_common_reference_t<ranges::iterator_t<R>>;
(4) (C++20以降)
1) 範囲型Rのイテレータ型の参照型を取得するために使用されます。
2) 範囲型Rのイテレータ型の定数参照型を取得するために使用されます。
3) 範囲型Rのイテレータ型の右辺値参照型を取得するために使用されます。
4) 範囲型Rのイテレータ型の共通参照型を取得するために使用されます。

[編集] テンプレートパラメータ

R - a range 型または sized_range

[編集] 欠陥報告

以下の動作変更を伴う欠陥報告が、以前に公開されたC++標準に遡って適用されました。

DR 適用対象 公開された動作 正しい動作
LWG 3860 C++20 range_common_reference_t が欠落していました 追加された

[編集] 関連項目

イテレータの関連型を計算する
(エイリアステンプレート)[編集]
rangeのイテレータ型と番兵型を取得する
(エイリアステンプレート)[編集]
rangeのサイズ型、差分型、値型を取得する
(エイリアステンプレート)[編集]
English 日本語 中文(简体) 中文(繁體)