本帖最后由 Aitlo 于 2021-8-21 17:19 编辑
- --[===[-- 函数的本质
- Lua函数本质是匿名的,即没有名称。讨论一个函数,本质是讨论一个持有次函数的变量。
- 函数与普通类型的数值权利相同。
- 1、函数可以存储在变量或者table中,也可以作为实参传递其他函数,还可以作为其他函数的返回数值。
- 2、本质上函数就是一条语句,可以将其存储在全局变量中,也可以存储在局部变量中。]===]
-
- -- 函数的本质
- -- 函数本质是匿名的
- function GetNum1(num) -- 定义函数1
- return num * 2
- end
- GetNum2 = function(num) -- 定义函数2: 把一个函数指定一个遍历
- return num * 2
- end
-
-
- -- 调用
- print(GetNum1(8)) -- 输出结果:16
- print(GetNum2(8)) -- 输出结果:16
-
-
- -- 函数可以存储在表中。
- funArray = {}
- funArray[1] = GetNum1
- funArray[2] = GetNum1
- for i = 1,#funArray do
- print(funArray[i](20)) -- "funArray[i]"表示输出表本身,然后加小括号则表示调用(函数)
- end
-
- -- 函数的内容定义与表的初始化同时进行。
- FuncLib={}
- FuncLib.add = function(x,y) return x+y end
- FuncLib.sub = function(x,y) return x-y end
-
-
- -- 调用调试
- print(FuncLib.add(10,10)) -- 输出结果:20
- print(FuncLib.sub(50,20)) -- 输出结果:30
-
-
-
复制代码
|