有人可以详细说明为什么要nonnull
在iOS 9中引入吗?
例如,现在的NSArray
方法+ (instancetype)array;
是+ (instancetype nonnull)array;
请参阅:https : //developer.apple.com/library/prerelease/ios/releasenotes/General/iOS90APIDiffs/frameworks/Foundation.html
这是Objective-C级别的功能吗?这会对现有应用产生什么影响?
他们已经确保无论类型是什么都不为空,现在都是nonnull
类型。
像以前的NSMutableArray addObject
方法是
- (void)addObject:(ObjectType)anObject
现在它已更改为
- (void)addObject:(ObjectType nonnull)anObject
因此,这意味着您无法将null对象(nil
)传递给此方法。同样的情况
+ (instancetype nonnull) array
方法将永远不会返回nil
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句