通过IsWindow(N)过滤0到0xFFFFFFFF的数字! = 0,排序并看 -
- 数字1)N,2)AND(N,0xFFFF),3)OR(N,0xFFFF0000) - 可以作为同一窗口的hwnd。
因此问题:是否可以在1个双字中存储2个hwnd,如果没有 - 请提供具体的反例。感谢。
答案 0 :(得分:3)
可以仅以16位存储HWND。事实上,你甚至可以将它存储在15位,因为它总是均匀。
但你应该问的是:这样做是明智的吗?答案是不! Win32 API的文档指出HWND是一个32位整数,但没有说明它的内部结构。这些是未记录的实现细节,可在任何版本的系统中更改。
任何负责任的程序员都不赞成任何利用这些知识的技术。这并不意味着它不会有用,只要你必须小心你所知道的。