nonnull : 不能为空
- 使用方法:
@property (nonatomic, copy, nonnull) NSString *name1;
@property (nonatomic, copy) NSString * _Nonnull name2;
@property (nonatomic, copy) NSString * __nonnull name3;
![](https://img.haomeiwen.com/i590107/92c4b5de1d6b1c4a.png)
nullable : 可以为空
- 使用方法:
@property (nonatomic, copy, nullable) NSString *name1;
@property (nonatomic, copy) NSString *_Nullable name2;
@property (nonatomic, copy) NSString *__nullable name3;
![](https://img.haomeiwen.com/i590107/829f408488ec279e.png)
null_resettable : get方法不能返回空, set方法可以为空
- 使用方法:
@property (nonatomic, strong, null_resettable) NSString *name;
![](https://img.haomeiwen.com/i590107/9e558ca75d2e7a48.png)
_Null_unspecified : 不确定是否为空
- 使用方法:
@property (nonatomic, strong) NSString *_Null_unspecified name1;
@property (nonatomic, strong) NSString *__null_unspecified name2;
![](https://img.haomeiwen.com/i590107/02f4b7ee43b3fece.png)
注意点:
不能修饰一般数据类型
![](https://img.haomeiwen.com/i590107/599fa7f88114484f.png)
网友评论