iPhone - 核心数据NSInteger,integer32,int或其他

Spa*_*Dog 3 iphone xcode core-data objective-c ios

我的核心数据值是"整数32".我应该如何设置/获取此值?

[NSNumber numberWithInteger:X]
Run Code Online (Sandbox Code Playgroud)

或者

[NSNUmber numberWithInt:X] 
Run Code Online (Sandbox Code Playgroud)

bry*_*mac 8

正如杰克所说,这是一种类型.要添加答案,这是您如何找到答案.

在XCode中,按住Apple键并打开源文件.你会看到NSInteger成为一个链接.点击它后,它将打开它的定义.

#if __LP64__ || (TARGET_OS_EMBEDDED && !TARGET_OS_IPHONE) || TARGET_OS_WIN32 ||      NS_BUILD_32_LIKE_64
typedef long NSInteger;
typedef unsigned long NSUInteger;
#else
typedef int NSInteger;
typedef unsigned int NSUInteger;
#endif
Run Code Online (Sandbox Code Playgroud)

此外,xlc0212的观点很好.如果您阅读上面的定义,那就非常清楚了.


Jac*_*nce 6

NSInteger只是一个typedeffor int,所以你不会以这种或那种方式丢失/获得整数精度.两者都有效.