在iOS开发中,何时应该使用NSInteger
而不是int?我看到在苹果的示例代码中,当将值作为参数传递给函数或从函数返回值时,他们使用NSInteger
(或NSUInteger
)。
- (NSInteger)someFunc;...
- (void)someFuncWithInt:(NSInteger)value;...
但在函数内部,它们只是使用 int
来追踪一个值。
for (int i; i < something; i++)
...
int something;
something += somethingElseThatsAnInt;
...
我已经阅读(或被告知)NSInteger
是在64位或32位环境下引用整数的安全方式,那么为什么还需要使用int
呢?
NSInteger
的API交互时才使用它。除此之外,它与int或long相比没有任何优势。至少用int或long时,你知道在printf或类似语句中该使用哪些格式说明符。 - JeremyP