Mos*_*she 26 iphone objective-c ios
我有一行代码将根据数据类型"day"和"1"的不同而有所不同.我相信它是以下,虽然我稍后会检查我的源代码.
day = day + 1;
这有意义吗?差异会是什么?
Tho*_*ing 49
NSInteger
是一个描述整数的类型定义 - 但它不等同int
于64位平台.
您可以通过NSInteger
在Xcode中单击cmd来检查typedef .
NSInteger
定义为int
构建32位应用程序和long
64位应用程序时.
大多数情况下,您可以使用NSInteger替换int,但在执行此操作时需要考虑一些事项.
Apple的64位Cocoa过渡指南提供了一些相关信息.
NSNumber是一个可以帮助您将数字类型存储为对象的类.它具有在不同类型和方法之间进行转换的方法,以检索数值的字符串表示形式.
如果您在示例中使用day
类型变量NSNumber*
,则不会修改day
其内存地址的值.
如果您正在处理时间值,您还可以查看NSDate.
Xar*_*mer 10
NSInteger
是一个简单的整数,NSNumber
是一个对象,其中as int
是一个原始数据类型.
NSInteger只不过是一个长整数的同义词.
如果您需要在某处存储号码,请使用NSNumber.如果您正在进行计算,循环等,请使用NSInteger,NSUInteger或int.
您可以使用以下命令将NSInteger包装到NSNumber中:
NSNumber *NumberToStore = @(21);
Run Code Online (Sandbox Code Playgroud)
并使用以下方式恢复
NSInteger retrievingInteger = [NumberToStore integerValue];
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
32600 次 |
最近记录: |