草庐IT

MethodPtr

全部标签

c++ - 模板推导在堆上失败,但在堆栈上有效

我有一个模板类的问题。当我在堆栈上实例化该类时,它可以工作。当我在堆上实例化同一个类时,它失败了。(论据推演)我不明白为什么...信息:我正在使用gcc7.2.0和c++17。这里是一个例子:#include#include#includetemplateclassMethodPtr{public:typedefReturnType(ClassName::*Method)(Args...);MethodPtr(ClassName*ptr,Methodm):_p(ptr),_m(m){(ptr->*m)(4);}ClassName*_p;Method_m;};classExample{p

c++ - 模板推导在堆上失败,但在堆栈上有效

我有一个模板类的问题。当我在堆栈上实例化该类时,它可以工作。当我在堆上实例化同一个类时,它失败了。(论据推演)我不明白为什么...信息:我正在使用gcc7.2.0和c++17。这里是一个例子:#include#include#includetemplateclassMethodPtr{public:typedefReturnType(ClassName::*Method)(Args...);MethodPtr(ClassName*ptr,Methodm):_p(ptr),_m(m){(ptr->*m)(4);}ClassName*_p;Method_m;};classExample{p