Swift学习笔记三之函数闭包

函数:
一个函数最多只能拥有一个可变参数,...在数据类型后边,表示参数个数可变
_参数名称前面的下划线表示,调用函数的时候,这个参数名称可以不用填写

输入输出参数:
注意:输入输出参数不能有默认值,而且可变参数不能用inout标记
只能传变量给输入输出参数,不能传常量或者字面量,因为这些量是不能被修改的。当传入的参数作为输入输出参数时,需要在参数名前加&符,表示这个值可以被函数修改

闭包:
函数也是特殊的闭包,闭包主要采取如下三种形式之一:
1、全局函数是一个有名字但不会捕获任何值的闭包
2、嵌套函数是一个有名字并可以捕获其封闭函数域内值的闭包
3、闭包表达式是一个利用轻量级语法所写的可以捕获其上下文中变量或常量值的匿名闭包

根据上下文推断类型:
实际上,通过内联闭包表达式构造的闭包作为参数传递给函数或方法时,总是能推断出闭包的参数和返回值类型,这意味着闭包作为函数或者方法的参数时,你几乎不需要利用完整的格式构造内联闭包,尽管如此,我们还是可以明确写出有着完整格式的闭包。如果完整格式的闭包能够提高代码的可读性,则我们更鼓励采用完整格式的闭包。

你可能感兴趣的:(Swift学习笔记三之函数闭包)