名前空間
変種
操作

std::projected_value_t

From cppreference.com
 
 
イテレータライブラリ
イテレータのコンセプト
イテレータのプリミティブ
アルゴリズムのコンセプトとユーティリティ
間接呼び出し可能コンセプト
共通アルゴリズム要件
(C++20)
(C++20)
(C++20)
ユーティリティ
(C++20)
projected_value_t
(C++26)
イテレータアダプタ
Rangeアクセス
(C++11)(C++14)
(C++14)(C++14)  
(C++11)(C++14)
(C++14)(C++14)  
(C++17)(C++20)
(C++17)
(C++17)
 
ヘッダ <iterator> で定義
template< std::indirectly_readable I,

          std::indirectly_regular_unary_invocable<I> Proj >
using projected_value_t =

    std::remove_cvref_t<std::invoke_result_t<Proj&, std::iter_value_t<I>&>>;
(C++26以降)

エイリアステンプレートprojected_value_tは、Projstd::iter_value_t<I>&に適用した結果の型から、参照と最上位のcv修飾子をすべて取り除くことで値型を取得します。

projected_value_tは、ranges::containsなどの一部のアルゴリズムでデフォルトの値型を決定するために使用されます。

目次

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

I - 間接的に読み取り可能な型
Proj - Iの値型の左辺値参照に適用されるプロジェクション

[編集] 注釈

機能テストマクロ 規格 機能
__cpp_lib_algorithm_default_value_type 202403L (C++26) std::projected_value_tを使用したアルゴリズム値のデフォルトテンプレート型

[編集]

[編集] 関連項目

いくつかの indirectly_readable 型の間接参照の結果に対して呼び出し可能オブジェクトを呼び出した結果を計算する
(エイリアステンプレート)[編集]
(C++20)
射影を受け入れるアルゴリズムの制約を指定するためのヘルパーテンプレート
(クラステンプレート) [編集]
English 日本語 中文(简体) 中文(繁體)