lParam 和 WParam

先看看它们是什么的缩写

wParam  = word param

lParam    = long param

简单说明

这两个是Win16系统遗留下来的产物了  
  在Win16API中WndProc有两个参数  
  一个是WORD类型的16位整型变量  
  另一个是LONG类型的32位整型变量,  
  因此根据匈牙利命名法,16位的变量就被命名为wParam,    
  而32位的变量就被命名为lParam。  
   
  到了Win32API中,原来的16位变量也被扩展为32位,  
  因此wParam和lParam的大小完全相同。  
  在Win32API的早期,为了保证和Win16API的代码可移植性  
  MS定义了WPARAM和LPARAM两个宏  
  当时保留了w前缀的原因一方面是由于WPARAM宏也已W开头,  
  还有也因为要提醒程序员注意到可移植性,当然到了现在  
  Win16早已退出历史舞台,这个前缀也就约定俗成的沿用下来了。

 

习惯

如果是你定义的消息,愿意怎么使这两个参数都行。但是习惯上,我们愿意使用LPARAM传递地址,而WPARAM传递其他参数

上一篇: axure网站开发原型设计(需求文档必备)   下一篇: 关于MYSQL的字段默认NULL值

提交疑问

回顶部