c – 可以从指向成员函数模板参数的指针推导出类类型
作者:互联网
是否可以从其指向memmber T :: * f的指针推导出类T的类型,如下所示.
struct Foo
{
void func(){}
};
template<typename T, void (T::*f)()>
void bar()
{
}
int main()
{
bar<Foo,Foo::func>();
// bar<Foo::func>(); // Desired
}
解决方法:
在C 17中,您将被允许写作
template<auto M>
void bar();
这使得
bar<&Foo::func>();
标签:type-deduction,template-deduction,pointer-to-member,c,templates 来源: https://codeday.me/bug/20190724/1523421.html