首页 > 编程知识 正文

be动词的用法总结,for的用法总结

时间:2023-05-04 01:40:51 阅读:58957 作者:2505

来自3:https://www.Jian Shu.com/p/189 AAA4DD 498

_Nullable等使用方法

__nullable和__nonnull。 字面上,__NULLable表示对象为null或nil,__nonnull表示对象不应该为空。 如果不遵守这个规则,编译器会发出警告。 在Xcode 7中,为了避免与第三方库发生潜在冲突,苹果将__nonnull/__nullable更改为_Nonnull/_Nullable。 再加上苹果也同样支持了无下划线的nonnull/nullable书写方式,导致了现在有3种书写方式的混乱。

虽然这三种写法本质上是相通的,但只是放置的位置不同。 以下是示例。

方法返回值限定:

-(nullablensstring* )方法; -(nsstring*__nullable ) method2; -(nsstring*_nullable ) method3; 声明属性的限定:

@property(nonatomic,copy,nullable ) NSString *aString; @property(nonatomic,copy ) NSString* __nullable aString; @property(nonatomic,copy ) NSString* _Nullable aString; 方法参数修饰:

- void (方法字符串: (nullablensstring * ) a字符串; -(void ) methodwithstring : (ns字符串* _ nullable ) aString; -(void ) methodwithstring : (ns字符串* _ _ nullable ) aString; 对于双指针对象、Block返回值、Block参数等,此时不能用nonnull/nullable进行限定,可以使用带下划线的__nonnull/__nullable或_

-(void ) methodwitherror : (ns错误* _ nullable * _ nullable )错误; -(void )方法: (ns error * _ _ nullable * _ _ null _ unspecified )错误; //其他组合方法--(void ) methodwithblock: ) nullableid__nonnull(^ ) _nullableparams ) ) block; -(void ) methodwithblock : (id _ _ nonnull (^ _ nullable ) _nullableparams ) ) block; -(void ) methodwithblock : (id _ nonnull (^ _ nullable );id _Nullable params ) ) block; 总结:

属性、方法返回值和方法参数的限定包括: nonnull/nullable;

使用: _Nonnull/_Nullable修饰c函数的参数、Block参数和Block返回值

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。