我面临模板化成员函数指针的问题。代码如下所示。
#include <String>
#include <iostream>
template<typename T>
struct method_ptr
{
typedef void (T::*Function)(std::string&);
};
template <class T>
class EventHandler
{
private:
method_ptr<T>::Function m_PtrToCapturer;
};
e:\EventHandler.h(13) :
error C2146: syntax error : missing ';' before identifier 'm_PtrToCapturer'
我正面临这个错误。
即使我使用
method_ptr<EventHandler>::Function m_PtrToCapturer;
作为成员变量,我得到与上面相同的错误。