Scroll to navigation

std::projected_value_t(3) C++ Standard Libary std::projected_value_t(3)

NAME

std::projected_value_t - std::projected_value_t

Synopsis


Defined in header <iterator>
template< std::indirectly_readable I,


std::indirectly_regular_unary_invocable<I> Proj >
using projected_value_t = (since C++26)


std::remove_cvref_t<std::invoke_result<Proj&,
std::iter_value_t<I>&>>;


The alias template projected_value_t obtains the value type by stripping any
reference and its topmost cv-qualifiers of the result type of applying Proj to
std::iter_value_t<I>&.


projected_value_t is used to determine the default value type in some algorithms
such as ranges::contains.

Template parameters


I - an indirectly readable type
Proj - projection applied to an lvalue reference to value type of I

Notes


Feature-test macro Value Std Feature
default template type __cpp_lib_default_template_type_for_algorithm_values 202403L (C++26) for algorithm values
using
std::projected_value_t

Example


This section is incomplete
Reason: no example

See also


indirect_result_t computes the result of invoking a callable object on the result of
(C++20) dereferencing some set of indirectly_readable types
(alias template)
projected helper template for specifying the constraints on algorithms that
(C++20) accept projections
(class template)

Category:


* Todo no example

2024.06.10 http://cppreference.com