std::experimental::ranges::tagged_pair
来自cppreference.com
                    
                                        
                    < cpp | experimental | ranges
                    
                                                            
                    |   template< ranges::TaggedType T1, ranges::TaggedType T2 > using tagged_pair = /* see below */;  | 
(范围 TS) | |
用于命名包装 std::pair 的 ranges::tagged 的便利别名模版。
TaggedType 是 S(T) 类型函数,其中 S 为 TagSpecifier 而 T 为元素类型。
tagged_pair<S1(T1), S2(T2)> is an alias for ranges::tagged<std::pair<T1, T2>, S1, S2>.
注意
因为用函数类型“粘”着标签指定符和对应的元素类型,故应用通常参数类型调整。具体而言即移除顶层 cv 限定符并调整数组类型为指针: tagged_pair<tag::in(const int* const), tag::out(int[])> 即是 ranges::tagged<std::pair<const int*, int*>, tag::in, tag::out> 。
参阅
|   指定类型表示一个标签说明符及其元素类型  (概念)  | |
|   为元组式类型增加具名访问器  (类模板)  | |
  用于创建 tagged_pair 的便利函数 (函数模板)  | |
|   有标签 std::tuple 的别名模版  (别名模板)  | |
  用于创建 tagged_tuple 的便利函数 (函数模板)  | |
|   用于 ranges::tagged 的标签说明符  (类)  |