https://github.com/YouXianMing

unwrapped与wrapped变量取值的问题

unwrapped与wrapped变量取值的问题

 

当我们在定义一个tableView时,是可以使用3种定义方式的,第一种就是定义成optional(AnyObject?)形式,第二种为non-optional形式(AnyObject 与 AnyObject!)。

 

optional方式的变量在使用时是需要解包的,如下所示:

因为view.addSubview中的对象只支持解包对象(func addSubview(view: UIView))所以在添加子view的时候,需要你解包对象。

 

 

non-optional方式的变量在使用时直接使用的对象,如下所示:

 

所以我们需要去除所有的解包操作:

 

 

小结:

虽然这些小小的语法特性并不那么令人在意,但在设计复杂的类结构时,对于枝末细节不甚清楚是无法完成设计需求的。

posted @ 2015-09-24 22:29  YouXianMing  阅读(420)  评论(0编辑  收藏  举报