iOS9的几个关键字(nonnull、nullable、null_resettable、__null_unspecified)

nullable:1.怎么使用(语法) 2.什么时候使用(作用)

nullable作用:可能为空

nullable 语法1

@property (nonatomic ,strong,nullable) NSSting *name;

nullable 语法2

@property (nonatomic, strong) NSString *_Nullable name;

nullable 语法3

@property (nonatomic, strong) NSString * __nullable name;

nonull:1.怎么使用(语法) 2.什么时候使用(作用)

nonull作用:不能为空

nonull 语法1

@property (nonatomic ,strong,nonull) NSSting *name;

nonull 语法2

@property (nonatomic, strong) NSString *_Nonull name;

nullable 语法3

@property (nonatomic, strong) NSString * ___nonull name;

null_resettable:1.怎么使用(语法) 2.什么时候使用(作用)

null_resettable作用:必须要处理为空的情况,重写get方法  get方法不能返回nil,set可以传空

null_resettable 语法1

@property (nonatomic ,strong,nonull) NSSting *name;

- (void)setName:(NSString *)name { 

  if (name == nil) { 

   name = @"我叫王晓凯"; 

  }

  _name = name; 

 }

- (NSString *)name {

  if (_name == nil) {

  _name = @"我叫我叫王晓凯";

  }

  return _name;

 }

__null_unspecified:1.怎么使用(语法) 2.什么时候使用(作用)

__null_unspecified作用:不确定是否为空

使用方式只有这两种:

语法1 @property (nonatomic, strong) NSString *_Null_unspecified name;

语法2 @property (nonatomic, strong) NSString *__null_unspecified name;

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容