核心数据 integer32 与 integer64

Core data integer32 vs integer64

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

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

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

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

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

所以在你的情况下:

For storing such a value I need uint32_t which can have a range between 0 to 4294967295 if I am right? So equivalent in Core Data would be Integer32?

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