std::basic_common_reference<tuple-like>
来自 cppreference.cn
| 定义于头文件 <tuple> |
||
| template< tuple-like TTuple, tuple-like UTuple, template<class> class TQual, template<class> class UQual > |
(C++23 起) | |
两个 tuple-like 类型的公共引用类型是一个 std::tuple,它由这两个类型所有对应元素类型对的公共引用类型组成,其中 tuple-like 类型上的 cv 限定符和引用限定符应用于它们的元素类型。
给定
-
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_reference_t<TQual<TTypes>..., UQual<UTypes>>...> 表示一个类型。
[编辑] 成员类型
| 成员类型 | 定义 |
类型
|
std::tuple<std::common_reference_t<TQual<TTypes>..., UQual<UTypes>>...> |
[编辑] 示例
| 本节不完整 原因:无示例 |
[编辑] 参阅
| 确定一组类型的公共引用类型 (类模板) | |
确定两个 pair 的公共引用类型(类模板特化) |