std::indirect_result_t

来自cppreference.com
< cpp‎ | iterator
 
 
迭代器库
迭代器概念
迭代器原语
算法概念与工具
间接可调用概念
常用算法要求
工具
indirect_result_t
迭代器适配器
流迭代器
迭代器定制点
迭代器操作
(C++11)
(C++11)
范围访问
(C++11)(C++14)
(C++11)(C++14)
(C++17)(C++20)
(C++14)(C++14)
(C++14)(C++14)
(C++17)
(C++17)
 
定义于头文件 <iterator>
template< class F, class... Is >

    requires (std::indirectly_readable<Is> && ...) &&
              std::invocable<F, std::iter_reference_t<Is>...>

using indirect_result_t = std::invoke_result_t<F, std::iter_reference_t<Is>...>;
(C++20 起)

别名模板 indirect_result_t 获得在解引用 indirectly_readable 类型 Is... 的结果上调用 invocable 类型 F 的结果类型。

模板形参

F - 可调用类型
Is - 解引用到实参的间接可读类型

参阅

(C++11)(C++20 中移除)(C++17)
推导以一组实参调用一个可调用对象的结果类型
(类模板)