std::experimental::ranges::tagged_pair
來自 cppreference.com
< cpp | experimental | ranges
定義於標頭檔案 <experimental/ranges/utility> |
||
template< TaggedType T1, TaggedType T2 > using tagged_pair = /* 見下方 */; |
(ranges TS) | |
用於命名包裝 std::pair 的 ranges::tagged
的便捷別名模板。
一個 TaggedType
是一個函式型別 S(T)
,其中 S
是一個 TagSpecifier
,T
是元素的型別。
tagged_pair<S1(T1), S2(T2)> 是 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 的標籤指定符 (類) |