作为模板输入参数的可变数量的方法
variadic number of methods as template input parameter
是否可以指定成员函数模板参数包?
像这样:
template <typename foo, void (foo::*bar)(void) ...>
void application()
{
}
None 我的解决方案有效,我想避免将我将要使用的每个函数都放在结构中。
语法是
template <typename C, void (C::*...mfuncs)()>
void application()
{
// ...
}
或 typedef
:
template <typename C>
using MemberFunc = void (C::*)();
template <typename C, MemberFunc<C>...mfuncs>
void application();
是否可以指定成员函数模板参数包? 像这样:
template <typename foo, void (foo::*bar)(void) ...>
void application()
{
}
None 我的解决方案有效,我想避免将我将要使用的每个函数都放在结构中。
语法是
template <typename C, void (C::*...mfuncs)()>
void application()
{
// ...
}
或 typedef
:
template <typename C>
using MemberFunc = void (C::*)();
template <typename C, MemberFunc<C>...mfuncs>
void application();