《WRITE GREAT CODE》 Volume 1-Unde

2017-03-12  本文已影响0人  Kingty

第二章:数值表示

第三章:二进制算数与位运算

0000 0000 0000 0000 0000 0000 0000 0001  0x01
&
0000 0000 0000 0000 0000 0000 1111 1111  0xff
=
0000 0000 0000 0000 0000 0000 0000 0001  0x01

当触发的事件值大于0xff时,这个时候第二个八位的值就不是零了,也就是不是只有一个触控点,所以通过getAction()拿到的值其实是包含了索引信息的
是不正确的,而通过getActionMasked()会对这个值按位与一个掩码0xff

0000 0000 0000 0000 0000 0001 0000 0001  0x0101
&
0000 0000 0000 0000 0000 0000 1111 1111  0x00ff
=
0000 0000 0000 0000 0000 0000 0000 0001  0x01

得到的就是一个只包含事件信息的值。如果我们要判断到底是第几个触控点Pointer产生的这个事件则可以根据getActionIndex()这个方法来获取。这个方法其实和getActionMasked
类似,只是它是对第二个八位的还原,加了一个掩码右移了8位,就得到了索引的值

0000 0000 0000 0000 0000 0001 0000 0001  0x0101
&
0000 0000 0000 0000 1111 1111 0000 0000  0xff00
=
0000 0000 0000 0000 0000 0001 0000 0000  0x0100
>>8
=
0000 0000 0000 0000 0000 0000 0000 0001  0x01

第四章 浮点表示法

第五章 字符表示法

第六章 内存组织与访问

第七章 符合数据类型和内存对象

指针
数组
Struct 和discriminant union
上一篇 下一篇

猜你喜欢

热点阅读