Lua中的函数浅析
一、函数
在lua中函数的调用方式和C语言基本相同。如print(“helloworld”),z=add(x+y)。唯一的差别是,如果函数只有一个参数,并且该参数是字符串或者table构造器,那么圆括号可以省略,如print“helloworld”,f{x=10,y=10}。
我对于table构造器的理解就是它本身就是一个构造函数或者是特殊化的结构体。
lua为面向对象也提供了一个新的特殊语法--冒号操作符。表达式o.foo(o,x)的另一种写法是o:foo(x)。
functionadd(a)
localsum=0
fori,vinipairs(a)do
sum=sum+v
end
returnsum
end
在以上声明中,包含了函数名(add),参数列表(a),以及函数体。需要说明的是,Lua中实参和形参的数量可以不一致,一旦出现这种情况,Lua的处理规则等同于多重赋值,即实参多于形参,多出的部分被忽略,如果相反,没有被初始化的形参的缺省值为nil。
1、多重返回值
functionmaximum(a)
localpos=1
localmaxx=a[1]
fori,vinipairs(a)do
ifv>maxxthen
pos,maxx=i,v
end
end
returnpos,maxx
end
print(maximum({1,5,2,7,3,6})) --输出47
热门推荐
9 家长会简短祝福语
10 班级祝福语简短句子
11 亲人喜得贵子祝福语简短
12 婆婆66岁祝福语简短
13 便利贴老师祝福语简短
14 忌日祝福语简短10字
15 开业贺卡祝福语简短高级
16 自己祝福语简短唯美短句
17 鼠年元旦生日祝福语简短
18 情侣结婚的祝福语简短