请教:这种写法是什么意思? MIRANDASERVICE pfnService;pfnService=......;((int (*)(WPARAM,LPARAM))pfnService)(wParam,lParam);最主要是看不明白:int (*)(WPARAM,LPARAM) 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这是一个函数指针,返回值是int型,带有两个参数,WPARAM,LPARAM 呵呵,pfnService是从希哈表中取出的函数名.所以其实是((int (*)(WPARAM,LPARAM))FUNCTION_NAME)(wParam,lParam);只是不明白函数名前面的是什么? pfnService是一个函数指针;int (*)(WPARAM,LPARAM)是做强制类型转换相当于:typedef int (*pFunc)(WPARAM, LPARAM);pFunc p = (pFunc)pfnService;p(wParam, lParam); 呵呵,明白了,谢谢,但是前面(WPARAM,LPARAM)是什么用 呵呵,pfnService是从希哈表中取出的函数名.所以其实是((int (*)(WPARAM,LPARAM))FUNCTION_NAME)(wParam,lParam);只是不明白函数名前面的是什么?--------------------------------函数名前是不是返回的int型指针(转换WPARAM,LPARAM)得来的呢?不知道对不对? ((int (*)(WPARAM,LPARAM))FUNCTION_NAME)(wParam,lParam);只是不明白函数名前面的是什么?前面相当于是显示的转换但是前面(WPARAM,LPARAM)是什么用是2个参数(相当于int一样)WPARAM,LPARAM只是一种参数类型而已楼主好好看看基础 呵呵,其实我已经明白了, captainwh(wh) ( ) 信誉:86 是正确的.主要是省去了pFunc这个名,一时变通不了.多谢大家的批评,基础我会加强的 VC6获得EXcel2007的某一列的内容 一个vc简单问题的求助 OpenGL多边形区域裁剪 吉林大学的田大新老师讲解的c++ 怎么样 不能将参数1从"char*"转换为"CFile *"怎么办?!@_@ 两个对话框之间函数调用的问题 弱弱的问,1万行代码算小型项目吗? 求助:关于ULARGE_INTEGER的使用问题! DirectX 里 x + y * (ddsd.lPitch >> 1)谁个我详细解释解释! vs2005 + ADO 获取Excel2007中的所有sheet名称问题 怎么显示0x00啊? 工具栏上button的文字无法显示
((int (*)(WPARAM,LPARAM))FUNCTION_NAME)(wParam,lParam);只是不明白函数名前面的是什么?
int (*)(WPARAM,LPARAM)是做强制类型转换
相当于:
typedef int (*pFunc)(WPARAM, LPARAM);
pFunc p = (pFunc)pfnService;
p(wParam, lParam);
((int (*)(WPARAM,LPARAM))FUNCTION_NAME)(wParam,lParam);只是不明白函数名前面的是什么?
--------------------------------函数名前是不是返回的int型指针(转换WPARAM,LPARAM)得来的呢?
不知道对不对?
主要是省去了pFunc这个名,一时变通不了.多谢大家的批评,基础我会加强的