作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
structure.style = CS_HREDRAW | CS_VREDRAW;
这是我找到的用于注册窗口类和设置调整大小设置的代码行,但它是如何工作的,结构的 style
的值是多少?
中间的管道符号 |
是按位 OR
所以它会将 style
设置为 CS_HREDRAW 中的位组合| CS_VREDRAW
那么它对 Windows 意味着什么,它如何知道两者是否已设置,一个是还是一个都没有?
可能是我多虑了...
最佳答案
标志可以进行“或”运算的原因是因为它们是有意写入的,不会相互抵消。
如果您查看这些标志的值,您会发现:
CS_HREDRAW = 0x0001 = 0000 0000 0000 0001
CS_VREDRAW = 0x0002 = 0000 0000 0000 0010
对这些标志进行 ORing 的结果是:
COMBINED = 0x0003 = 0000 0000 0000 0011
这被称为 Bit Field
该函数知道每个标志对应于哪些位,因此查看设置了哪些位将告诉它如何表现。
关于c++ - CS_HREDRAW | CS_VREDRAW 有什么作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24296750/
structure.style = CS_HREDRAW | CS_VREDRAW; 这是我找到的用于注册窗口类和设置调整大小设置的代码行,但它是如何工作的,结构的 style 的值是多少? 中间的管
我是一名优秀的程序员,十分优秀!