命名空间
变体
操作

std::projected_value_t

来自 cppreference.cn
 
 
迭代器库
迭代器概念
迭代器原语
算法概念与工具
间接可调用概念
常用算法要求
工具
projected_value_t(投影值类型)
(C++26)
迭代器适配器
 
定义于头文件 <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 通过剥离对 std::iter_value_t<I>& 应用 Proj 的结果类型中的所有引用及其最顶层 cv-限定符来获取值类型。

projected_value_t 用于确定某些算法(例如 ranges::contains)中的默认值类型。

目录

[edit] 模板参数

I - 一个间接可读类型
Proj - 应用于 I 的值类型的左值引用的投影

[edit] 备注

特性测试 标准 特性
__cpp_lib_algorithm_default_value_type 202403L (C++26) 使用 std::projected_value_t 的算法值的默认模板类型

[edit] 示例

[edit] 参阅

计算在解引用一组indirectly_readable类型的结果上调用可调用对象的结果
(别名模板)[编辑]
用于指定接受投影的算法约束的辅助模板
(类模板) [编辑]