swift UInt32 0 还是 0x0?
swift UInt32 0 or 0x0?
在我查看的所有教程中,当分配给 UInt32 时,我看到数字为 0x0
self.physicsBody!.collisionBitMask = 0x0
为什么不
self.physicsBody!.collisionBitMask = 0
这是有原因的还是只是为了可读性?
0
和0x0
没有区别,但是这样写是因为问题中的属性是一个位掩码,用十六进制更容易看.可能在其他地方,其他值将被写为 0x0010
等,因此为了保持一致性,他们选择写 0x0
。这是个人喜好,因此在您自己的代码中,可以随意使用十六进制、二进制,甚至是移位运算符 (1 << 3
)——只要能帮助您理解常量以及它们作为位掩码的交互方式即可。
在我查看的所有教程中,当分配给 UInt32 时,我看到数字为 0x0
self.physicsBody!.collisionBitMask = 0x0
为什么不
self.physicsBody!.collisionBitMask = 0
这是有原因的还是只是为了可读性?
0
和0x0
没有区别,但是这样写是因为问题中的属性是一个位掩码,用十六进制更容易看.可能在其他地方,其他值将被写为 0x0010
等,因此为了保持一致性,他们选择写 0x0
。这是个人喜好,因此在您自己的代码中,可以随意使用十六进制、二进制,甚至是移位运算符 (1 << 3
)——只要能帮助您理解常量以及它们作为位掩码的交互方式即可。