一:函数的定义
在Lua中函数是一个数据类型!
二:函数的特性
——函数可以当作一个变量作为数据赋值:将myfun作为数据变量传递给fun1,fun1函数就有了与myfun函数相同的功能
——函数可以作为参数传递(类似于C#中的委托与事件):将myPrint函数当做参数传递给add函数的fun参数
——函数可以定义为匿名函数
——函数可以返回多个值
三:函数的可变参数
将函数参数写为三个点,则当前参数为可变参数:
Lua会把可变参数当作一个以数组方式存储数据的表,表的名字叫arg,arg中保存着参数的键和值以及参数个数
如果想要遍历一个可变参数中所有的元素,通过遍历table的方式遍历arg会出现以下情况:最后的输出带有参数个数
避免这个问题需要使用{...}来代替arg,{...}中只存储了传入的参数
函数可以同时拥有固定参数和可变参数:
固定参数必须在可变参数前