Lua教程(四):函数详解
一、函数:
在Lua中函数的调用方式和C语言基本相同,如:print("HelloWorld")和a=add(x,y)。唯一的差别是,如果函数只有一个参数,并且该参数的类型为字符串常量或table的构造器,那么圆括号可以省略,如print"HelloWorld"和f{x=20,y=20}。
Lua为面对对象式的调用也提供了一种特殊的语法--冒号操作符。表达式o.foo(o,x)的另一种写法是o:foo(x)。冒号操作符使调用o.foo时将o隐含的作为函数的第一个参数。
Lua中函数的声明方式如下:
functionadd(a)
localsum=0
fori,vinipairs(a)do
sum=sum+v
end
returnsum
end
在以上声明中,包含了函数名(add),参数列表(a),以及函数体。需要说明的是,Lua中实参和形参的数量可以不一致,一旦出现这种情况,Lua的处理规则等同于多重赋值,即实参多于形参,多出的部分被忽略,如果相反,没有被初始化的形参的缺省值为nil。
1.多重返回值:
Lua支持返回多个结果值。如:
s,e=string.find("HelloLuausers","Lua")
print("Thebeginindexis"..s..",theendindexis"..e..".");
--Thebeginindexis7,theendindexis9.
以上的代码示例只是演示了如何获取Lua函数的多个返回值,下面的示例将给出如何声明返回多个值的Lua函数。如: [code] functionmaximum(a) localmi=1 localm=a[mi] fori,valinipairs(a)do ifval>mthen mi,m=i,val end end returnm,mi end print(maximum{8,10,23,12,5}) --23 3
热门推荐
10 八一幼儿祝福语大全简短
11 公司乔迁食堂祝福语简短
12 婚礼结束聚餐祝福语简短
13 儿媳买车妈妈祝福语简短
14 毕业送礼老师祝福语简短
15 同事辞职正常祝福语简短
16 恭贺新婚文案祝福语简短
17 金店立秋祝福语简短英文
18 婆婆高寿祝福语大全简短