瑞雪年

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: :: 订阅 订阅 :: 管理 ::

书接上回,可以作为参数和返回值的函数数型,以及嵌套函数,绝对继承了动态语言的优良传统; 函数嵌套了,那必然少不了闭包问题,Swift的闭包表达式语法也蛮有趣的。

{ (paraeeters) -> returnType in
  statements
}

延迟存储属性,一般语言要通过代码或类库实现,Swift直接作到语法里,多贴心啊, @lazy var

使用weak(弱引用)或unowned(无主引用),避免实例间的强引用环。

is, as 类型判断和转换,as? 非强转,等同于C#的as,转不成返nil.

Any混合不同类型,包括非class, AnyObject[]非明确类型

嵌套类型(Nested Types)很神奇

溢出运算符: &+, &-, &*, &/, &%, 类似与C#的checked, unchecked.

Swift支持运算符重载,在关键字func之前加属性@infix, @prefix, @postfix, @assignment

自定义运算符,/=-+*%<>!&|^~,这下玩大了,可以定义自已的表达式,如+++, +-

 

终于把整本书翻完了,Swift确实把new用作表达和类型的关键字,但没看到在什么地方使用,很奇怪?!

 

posted on 2014-11-30 12:17  瑞雪年  阅读(243)  评论(1编辑  收藏  举报