首页 > 系统 > iOS > 正文

iOS修行---nonnull,nullable修饰

2019-11-09 16:30:23
字体:
来源:转载
供稿:网友

                      iOS修行---nonnull,nullable修饰

@PRoperty(nonatomic,strong,nonnull) NSString *n1;@property(nonatomic,strong,nullable) NSString *n2;-(NSString *)test:(nullable NSString *)n3;简单理解,就是经过nonull修饰的n1不能被赋予nil,而nullable修饰的n2是可以为空的,如:

n1 = nil;这样Xcode是会warning的,而,n2 = nil;是可以滴

也可以如下,利用宏来大范围指定

NS_ASSUME_NONNULL_BEGIN@property(nonatomic,strong) NSString *n1;@property(nonatomic,strong,nullable) NSString *n2;-(NSString *)test:(NSString *)n3;NS_ASSUME_NONNULL_END

这样在BEGIN和END范围内的,都会被赋予nonnull,但也可以显示的指定nullable,如上,n1和n3是nonnull的,但是n2时nullable


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表