NSInteger整数初始化

时间:2014-02-16 09:34:04

标签: objective-c

是否不需要使用alloc和initialise关键字声明NSInteger?为什么?

我正在尝试做NSInteger * choice = [[NSInteger alloc] init];我发现直接分配

2 个答案:

答案 0 :(得分:2)

NSInteger只是int或long的typedef(取决于平台)

所以你可以初始化类似的东西

NSInteger i = 10;

引用SDK文档

NSInteger的 用于描述整数。

typedef long NSInteger;

构建32位应用程序时,NSInteger是一个32位整数。 64位应用程序将NSInteger视为64位整数。

https://developer.apple.com/library/ios/documentation/cocoa/reference/foundation/Miscellaneous/Foundation_DataTypes/Reference/reference.html

答案 1 :(得分:1)

NSInteger不是Objective-C对象。它是一种数据类型(很像C的intchar类型)。您无需为其调用“alloc”(以显式分配内存空间)。

您可以阅读其他Objective-C数据类型(例如NSRange,一旦进入NSString 对象,您将会大量使用)in this Apple documentation