格式
- function 函数名([变量]) 语句 end
- F1=function([变量]) 语句 end
- 函数声明的下方 可以使用函数
无参数 无返回值
function F1()
print(1)
end
有参数 无返回值
function F2(a,b)–不需要指定类型
print(a+b)
end
有参数 有返回值
- function F3(a)
return a
end - function F4(a,b)
return a+b,a-b
end
t1,t2=F4(1,1)
注意返回多个参数的时候 需要使用多个变量接收
变长函数
function F5(…)
arg={…}–表
for i=1,#arg do
print(arg[i])
end
end
函数嵌套
function F6(x)
–改变传入参数的生命周期 x保存在下面的函数中
return function(y)
return x+y
end
end
a=F6(1)
a(2) --返回3
注意
1.lua无函数重载 多个同名函数 只有最后一个起作用
2.若传入的参数数量多于函数声明时的数量 多余的参数回丢弃 不影响函数使用
3.若有多个返回值,需要使用多个变量接收
4.变长函数需要使用表
5.function 是一个类型