Namespaces
Variants

std::experimental::ranges:: tagged_pair

From cppreference.net
ヘッダーで定義 <experimental/ranges/utility>
template < TaggedType T1, TaggedType T2 >
using tagged_pair = /* 下記参照 */ ;
(ranges TS)

ranges::tagged でラップされた std::pair を命名するための便利なエイリアステンプレート。

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 で使用するためのタグ指定子
(クラス)