看官方給出的示例代碼,一般用于計算的,返回的整數都是用 NSInteger的,但是一般for循環的計數器就都是int了- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section;for (int i=0; i<10; i++) {}如果用int會在哪些情況下出現不安全的問題呢?為什么for循環計數器都用int,不會出問題嗎?NSInteger對比int會有性能上的或者其他的損失嗎?。。。我好像十萬個為什么啊 -_-||
1 回答

DIEA
TA貢獻1820條經驗 獲得超2個贊
#if __LP64__ || (TARGET_OS_EMBEDDED && !TARGET_OS_IPHONE) || TARGET_OS_WIN32 || NS_BUILD_32_LIKE_64typedef long NSInteger;typedef unsigned long NSUInteger;#elsetypedef int NSInteger;typedef unsigned int NSUInteger;#endif
這是NSInteger的定義
對于不同平臺32,64位有不同的最大值(int long)。
可以直接轉化。
所以mac os或者ios上的系統api都是使用NSInteger作為參數。
- 1 回答
- 0 關注
- 155 瀏覽
添加回答
舉報
0/150
提交
取消