码迷,mamicode.com
首页 > 编程语言 > 详细

swift中? ! weak unowned的跟人理解

时间:2016-05-21 15:40:59      阅读:153      评论:0      收藏:0      [点我收藏+]

标签:

?相当于给属性套上一层包,即为一个Optional值,而Optional有None和Some两个值,该属性在定义时未初始化结果就是swift自动初始化为nil值(就是Optional中的None,本质上是有值的),在使用过程中当该属性为nil时其实其值为.None而进行判断;秉着严谨的态度我们应该在使用前进行 if value {}的判断;而!是相对于隐式拆包,在调用过程都会默认的添加上!;

SO:在控制器中我们已确定添加的控件在viewDidLoad中初始化,且基本不会在生命周期内销毁,所以考虑都用!  而相对的一些常变的string,cgfloat类型的属性,在周期内可能为空,所以用?

作用:属性中?是为了避免为nil而crash,而!避免重复判断,高效而简洁

 

swift中? ! weak unowned的跟人理解

标签:

原文地址:http://www.cnblogs.com/hazhede/p/5514678.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!