C#的钩子语句的理解问题?

privatedelegateintHookHandle(intnCode,intwParam,IntPtrlParam);intptr表示什么啊?publicdeleg... private delegate int HookHandle(int nCode, int wParam, IntPtr lParam);

intptr 表示什么啊?
public delegate void ProcessKeyHandle(HookStruct param, out bool handle);
out bool 表示什么啊?
怎样理解这两个语句?
展开
 我来答
凝烟寒血
2012-11-18 · TA获得超过193个赞
知道小有建树答主
回答量:413
采纳率:100%
帮助的人:437万
展开全部
IntPtr表示的是一个指针类型,等同于C++里的void*
out C#调用C/C++ Dll用到一个关键字,因为bool,int,double等内置类型传递到C++ dll的方式默认是复制传递的,而加上out关键字的话,会在外部方法调用完成后,将变量的值再复制回来覆盖托管代码里的变量,如果不加out,外部代码对你传进去的变量所做的修改不会体现出来
追问
您好,
这句话里,ProcessKeyHandle表示一个函数吧,这个函数有两个参数;
然后,private static ProcessKeyHandle _clientMethod = null;
这句话怎么也不能理解呢?把函数设成一个常量值_clientMethod ,且为空NULL,函数怎么能又是常量呢?不理解,请您的指教呵
追答
ProcessKeyHandle是一个委托,相当于C++里面的函数指针,声明一个指针指向Null是可以的,建议你搜索C#里面的委托多了解下,这是新手最容易困惑的一个知识点
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式