これを生み出した質問について。
次の機能があります。
template<typename... Arguments, typename... Params>
Runnable<Params...>* makeRunnable(void (*FunctionType)(Arguments..., Params...), Arguments... args)
{
return new FunctionDelegate<Arguments..., Params...>(FunctionType, makeTuple(args...));
}
前の質問で「ForEveR」によって与えられた解決策に適応したいのですが、運が悪かったのです。
template<typename... Arguments, typename... Params>
Runnable<Params...>* makeRunnable(void (*FunctionType)(tuple<Arguments...>, tuple<Params...>), tuple<Arguments...> args)
{
return new FunctionDelegate<tuple<Arguments...>, tuple<Params...>>(FunctionType, args);
}
エラーが発生します。
error: no matching function for call to ‘makeRunnable(void (&)(tuple<int, int>, tuple<int>), tuple<int, int>)’