函数式编程

我们的变量可以存数字、字符串、节点实例等各种东西,现在,咱们试试在变量中存放方法。

此处所说的方法,就是咱们一直使用的,使用 func 关键字定义的方法,函数式编程允许我们在变量中存放一个方法的引用,并可通过这个变量调用对应的方法。

func _ready():
    var f = A
    f.call() # 输出 123

func A():
    print("123")
func B():
    print("666")

同时我们也可以简写,直接将方法定义到变量中,而不用定义新的方法:

var hello = func():
    print("Hello")
hello.call()

这种写法一般称为 Lambda 表达式,或者匿名方法。

注意,调用变量中的方法必须要使用 .call,如果方法有参数,则填入到 call 方法的参数中即可。