std::common_type<(类似元组)>
来自 zh.cppreference.net
| 定义于头文件 <tuple>
|
||
template< tuple-like TTuple, tuple-like UTuple >
requires /* see below */
struct common_type<TTuple, UTuple>;
|
(自 C++23 起) | |
两个tuple-like类型的公共类型是一个std::tuple,它由两种类型的所有对应元素类型对的公共类型组成。
给定
TTypes为对于每个整数std::tuple_element_t<i, TTuple>在i中,由序列[0,std::tuple_size_v<TTuple>)形成的包,以及UTypes为对于每个整数std::tuple_element_t<i, UTuple>在i中,由序列[0,std::tuple_size_v<UTuple>)形成的包,
需要满足以下约束:
TTuple或UTuple是std::tuple的特化。std::is_same_v<TTuple, std::decay_t<TTuple>>是true。std::is_same_v<UTuple, std::decay_t<UTuple>>是true。std::tuple_size_v<TTuple>等于std::tuple_size_v<UTuple>(TTuple和UTuple具有相同数量的元素)。std::tuple<std::common_type_t<TTypes, UTypes>...>表示一个类型。
成员类型
| 成员类型 | 定义 |
type
|
std:: tuple < std:: common_type_t < TTypes, UTypes > ... > |
示例
|
本节内容不完整
原因:缺少示例 |
参见
|
(C++11)
|
确定一组类型的公共类型
(类模板) |
|
(C++23)
|
确定两个
pair
的公共类型
(类模板特化) |