类成员函数指针

写类成员函数,一直失败,唉,一直遇到C2064错误,好歹msdn给了实例,真不错:)

http://msdn.microsoft.com/zh-cn/library/z72c1dfd(VS.80).aspx

1.首先定义指针就和其他的不一样:

//class.h

typedef HRESULT (Class::*FNNAME)(DISPPARAMS*);

2. 指针的赋值也不同:

FNNAME pfn = &Class::oneFn;

3.调用也不一样:

在类函数中: this->*pfn( var ) ; //错了,会有C2064

应该写: (this->*pfn)(var); 就这个括号,害得我很惨!

如果是外部则 (class.*pfn)(var);

 

posted on 2008-05-28 00:09  norsd  阅读(94)  评论(0编辑  收藏  举报

导航