我最近在Objective-C中编写了一个程序,我尝试编写了以下部分的行,其中'someString'是NSString的一个实例:
[someString substringFromIndex:3];
Run Code Online (Sandbox Code Playgroud)
编译器似乎没关系,但我不确定为什么.该substringFromIndex方法的文档说该参数必须是一个NSUInteger,而不仅仅是一个原始整数?我为什么要这样做?(注意,我是Objective-C的新手,所以我确信推理非常简单,或者我对某些事情的看法不对.)
NSUInteger是原始类型的typedef.它的类型取决于您正在编译的处理器.
正如所看到的在这里(和粘贴下面):
#if __LP64__ || TARGET_OS_EMBEDDED || TARGET_OS_IPHONE || TARGET_OS_WIN32 || NS_BUILD_32_LIKE_64
typedef unsigned long NSUInteger;
#else
typedef unsigned int NSUInteger;
#endif
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
258 次 |
| 最近记录: |