nReserved和ignored的参数有必要存在
编号:QA004188
建立日期: 2001年5月13日 最后修改日期:2001年5月13日
所属类别:
王寒:
操作系统 : Windows98
编程工具 : VC++6.0
问题: 您好!我 是 VC++6.0初 学 者
TrackPopupMenu是这样定义的
BOOL TrackPopupMenu(
HMENU hMenu, // handle to shortcut menu
UINT uFlags, // screen-position and mouse-button flags
int x, // horizontal position, in screen coordinates
int y, // vertical position, in screen coordinates
int nReserved, // reserved, must be zero
HWND hWnd, // handle to owner window
CONST RECT *prcRect // ignored
);
其中得int nReserved和CONST RECT *prcRect参数一个为must be zero,一个为ignored,但他们有存在的必要吗?
谢谢。
回答:
站在使用者的角度,这两个参数显然没有必要存在。但之所以会存在,主要和Windows的开发有关。有的参数实际上有意义,在Windows内部有程序使用,但是可能由于某种原因不想对外公布。有的是因为最初设计时想使用这两个参数,但是后来发现没有必要使用参数,但已经有程序这么调用了,为了保证现有程序不需要修改,所以就出现了这种多余参数的情况。目前没有看到有人专门研究这两个参数,所以可能属于第二种原因。
此问题由李海回答。
| |
|
|
| |
|
|