【发布时间】:2016-05-29 18:30:24
【问题描述】:
Apple 将 CFBit 记录为 UInt32,但我不知道为什么。如果每个 bit 都用 32 个 bits 定义,这难道不会违背使用 bit 向量的目的吗?我错过了什么吗?
【问题讨论】:
标签: types bit core-foundation bitvector cfbitvector
Apple 将 CFBit 记录为 UInt32,但我不知道为什么。如果每个 bit 都用 32 个 bits 定义,这难道不会违背使用 bit 向量的目的吗?我错过了什么吗?
【问题讨论】:
标签: types bit core-foundation bitvector cfbitvector
不,不是,因为 CFBit 不是存储类,例如一个 CFBitVector。它仅用于比较位向量中特定位置的特定位是 0 还是 1。编译器 (clang) 中没有内置类型来存储各个位(就像在某些嵌入式系统的编译器中一样),因此需要这种解决方法。为什么选择 UInt32 来达到这个目的,我不知道。
再次重申:CFBitVector 内部不是 CFBit 实例的向量。
【讨论】: