我有模板重载的方法。我试图创建指向重载方法的指针。模板类重载方法指针
template<typename T>
class Future {
public:
const T& get() const;
bool get(T*, int timeoutMs) const;
};
...
const void*&(Future<void*>::*x)()const = &Future<void*>::get;
编译失败,此错误:
no matches converting function 'get' to type 'const void*& (class Future<void*>::*)()const'
candidates are: const T& Future<T>::get() const [with T = void*]
bool Future<T>::get(T*, int) const [with T = void*]
我曾尝试的typedef Future<void*>
没有任何的运气。
Thx,它帮助。我被困了几个小时,解决方案非常简单... :)。 – Salw 2012-04-19 22:49:49
我认为这是一个很好的例子,为什么在前面写'const'不是一个好主意:'const T'和'T const'不一样,如果你把'void *'替换成T. – bames53 2012-04-19 22:57:35