核心数据integer32 vs integer64

时间:2015-03-11 20:59:45

标签: ios core-data integer persistence

我无法确定在下一种情况下这两种类型之间应该使用什么:

我知道我的应用中的某些属性的范围介于0 - 1000000之间,目标设备可以支持32位和64位架构。

为了存储这样的值,我需要uint32_t,如果我是对的,它的范围可以在0到4294967295之间?核心数据中的等价物是Integer32吗?

我想在我的情况下使用Integer64不会对内存消耗产生巨大影响,但是当目标设备可以具有64位架构但存储值只在unsigned int类型的范围内时,这两者之间的正确选择是什么?

1 个答案:

答案 0 :(得分:1)

Core Data属性的类型不依赖于设备的arch。您可以根据数据结构的要求选择它。如果使用uint32_t(等于Integer 32)使用它就足以定义您的需求,需要的不仅仅是使用Integer 64

所以在你的情况下:

  

为了存储这样的值,我需要uint32_t,它可以有一个范围   如果我是对的,在0到4294967295之间?核心数据中的等价物   会是Integer32吗?

您可以安全地使用Core Data的类型Integer 32