3
template<typename... Args>
class SomeClass
{
using tuple_type = std::tuple<Args...>; // (ie: <bool,int,bool>)
tuple_type mytuple;
};
template<typename T, typename C, typename... I> // T is SomeClass
class SomeOtherClass
{
void fn(void(C::*f)(bool,int,bool)); // I want this
// based on the T::tuple_type but I'm not sure how.
};
タプルに3つの要素しかないとわかっていれば、単にtuple_elementを3回使うことができますが、それはわかりません。タプルを関数のパラメータに変換する
はやる理由があります'(typename T :: tuple_type&)'の代わりに '(bool、int、bool)'を使いたいとしますか? – Felics
私はコールバックの引数を格納するタプルを使用しています。 get <>の使用により複雑な[](タプル)ではなく、[](bool a、int b、bool c)ラムダを渡すことができます(パラメータには良い名前があります)。それらをローカル変数に格納して意味のある名前を付けます。 – James