6
私はこのような変数の型のタプルを含むクラスを持っている:新しいタプルでタプルのサブセットを抽出するには?
template<class... Ts>
struct Tester
{
std::tuple<Ts...> t;
template<class... T2s>
std::tuple<T2s...> Get() { ??? }
};
例のインスタンスは、私は私のGet関数は、内部タプルのサブセットのみを返すようにしたいTester<int, float, char>
です。たとえば、tester.Get<int, char>
は、内部タプルの適切なメンバーから値がコピーされるstd::tuple<int, char>
を返します。
タプル内で各型が最大1回出現すると仮定することができます。Get
は、タプル内にある分かりやすいテンプレートパラメータでのみ呼び出されます。
「最初に一致するタイプ」は誤解を招く可能性があります。タイプが複数回出現する場合、プログラムは不正です。 –