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 50多岁生日简短祝福语
13 安徽疫情祝福语简短英语
14 农民朋友发财祝福语简短
15 对生活祝福语简短精辟
16 搬家词简短祝福语朋友
17 女神结婚快乐祝福语简短
18 文学短句祝福语大全简短