• Swift 对比学习 (二)


    书接上回,可以作为参数和返回值的函数数型,以及嵌套函数,绝对继承了动态语言的优良传统; 函数嵌套了,那必然少不了闭包问题,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用作表达和类型的关键字,但没看到在什么地方使用,很奇怪?!

  • 相关阅读:
    天网管理系统
    NSCTF web200
    程序逻辑问题
    Once More
    Guess Next Session
    上传绕过
    加了料的报错注入
    C++ GET UTF-8网页编码转换
    Android学习笔记函数
    C++ 模拟虚拟键盘按键表
  • 原文地址:https://www.cnblogs.com/zhongzf/p/4132967.html
Copyright © 2020-2023  润新知