std::common_type<tuple-like>
From cppreference.com
Defined in header <tuple>
|
||
template< /*tuple-like*/ TTuple, /*tuple-like*/ UTuple > requires /* see below */ |
(since C++23) | |
The common type of two tuple-like types is a tuple
consists of the common types of all corresponding element type pairs of both types.
The common type is defined only if
- both
TTuple
andUTuple
are cv-unqualified tuple-like types, and - either
TTuple
orUTuple
is a std::tuple specialization, and - both
TTuple
andUTuple
have the same number of elements (as determined by std::tuple_size_v), and - all corresponding element type pairs of
TTuple
andUTuple
have common types.
Member types
Member type | Definition |
type
|
std::tuple<std::common_type_t<TTypes, UTypes>...> |
In the table above, TTypes...
and UTypes...
denotes the sequence of element types of TTuple
and UTuple
respectively, where each elements type of TupleLike
at given index I
is std::tuple_element_t<I, TupleLike>.
Example
This section is incomplete Reason: no example |
See also
(C++11) |
determines the common type of a group of types (class template) |
(C++23) |
determines the common type of two pair s (class template specialization) |