命名空间
变体
操作

std::experimental::ranges::tagged_tuple

来自 cppreference.cn
< cpp‎ | experimental‎ | ranges
 
 
实验性
技术规范
文件系统库 (文件系统 TS)
库基础 (库基础 TS)
库基础 2 (库基础 TS v2)
库基础 3 (库基础 TS v3)
并行性扩展 (并行性 TS)
并行性扩展 2 (并行性 TS v2)
并发性扩展 (并发性 TS)
并发扩展 2 (并发 TS v2)
概念 (概念 TS)
范围 (范围 TS)
反射 (反射 TS)
数学特殊函数 (特殊函数 TR)
实验性非 TS
模式匹配
线性代数
std::execution
契约
2D 图形
 
 
通用工具库
实用组件
函数对象
元编程和类型特征
带标签的对和元组
                          
tag specifiers
                                      
                          
tagged_tuple

 
定义于头文件 <experimental/ranges/tuple>
template< TaggedType... Types >
using tagged_tuple = /* 见下文 */;
(ranges TS)

用于命名封装 std::tupleranges::tagged 的便捷别名模板。

一个 TaggedType 是一个函数类型 S(T),其中 S 是一个 TagSpecifierT 是元素的类型。

tagged_tuple<S1(T1), ..., SN(TN)>ranges::tagged<std::tuple<T1, ..., TN>, S1, ..., SN> 的别名。

[编辑] 注释

因为函数类型用于将标签说明符和相应的元素类型“粘合”在一起,所以适用通常的参数类型调整。特别是,顶级 cv-限定符被移除,数组类型被调整为指针:tagged_tuple<tag::in(const int* const), tag::out(int[])>ranges::tagged<std::tuple<const int*, int*>, tag::in, tag::out>

[编辑] 参阅

指定类型表示标签指定符及其元素类型
(概念) [编辑]
使用命名访问器增强类元组类型
(类模板) [编辑]
带标签的 std::pair 的别名模板
(别名模板)[编辑]
用于创建 tagged_pair 的便捷函数
(函数模板) [编辑]
用于创建 tagged_tuple 的便捷函数
(函数模板) [编辑]
用于 ranges::tagged 的标签指定符
(类) [编辑]