文章目录
8 函数
函数用来表示一块具有独立功能的代码,函数在面向过程的编程语言中被独立使用,在面向对象的编程语言中被封装到了类或者接口(协议)中,通过类的对象来使用。在现代编程语言中它的功能没有变化,除了可以 通过类来使用外还可以独立使用。函数的语法形式也有了很大的变化,这些变化主要是为了在程序中更加灵活地使用函数。接下来我们分析一下三种语言中函数的语法。
Swift
函数原型
func Name(p1:type=default,p2:type):back type { body}
原型中引入关键字func来定义函数,参数名在前,类型在后,在调用函数时必须使用参数名,类型后面可以给参数赋值,这种赋值叫默认值。如果调用函数时没有传递参数值,那么使用默认值。函数的多个参数使用逗号分隔,也可以在第一个参数后添加三个点(省略号)表示参数的数量是可变的。所有参数使用括号包起来,参数后面是函数的返回类型,如果没有有用的返回值可以省略不写。
函数的主要内容(body)使用大括号围起来,如果函数体只有一个表达式时可以省略return关键字,而是直接使用表达式。
与传统语言相比,最大的变化是把返回类型放到了后面,此外在返回值和函数体也有很多变化。
lambda表达式
Swift不支持这种语法,不过使用闭包和函数组合实现,而且符合现代编程语言精简的语法。