1.不定参数
高碑店网站建设公司成都创新互联,高碑店网站设计制作,有大型网站制作公司丰富经验。已为高碑店上千余家提供企业网站建设服务。企业网站搭建\成都外贸网站建设公司要多少钱,请找那个售后服务好的高碑店做网站的公司定做!
例e07.lua
- -- Functions can take a
- -- variable number of
- -- arguments.
- function funky_print (...)
- for i=1, arg.n do
- print("FuNkY: " .. arg[i])
- end end
- funky_print("one", "two")
运行结果
FuNkY: one
FuNkY: two
程序说明
* 如果以...为参数, 则表示参数的数量不定.
* 参数将会自动存储到一个叫arg的table中.
* arg.n中存放参数的个数. arg[]加下标就可以遍历所有的参数.
2.以table做为参数
例e08.lua
- -- Functions with table
- -- parameters
- function print_contents(t)
- for k,v in t do
- print(k .. "=" .. v)
- end
- end
- print_contents{x=10, y=20}
运行结果
x=10
y=20
程序说明
* print_contents{x=10, y=20}这句参数没加圆括号, 因为以单个table为参数的时候, 不需要加圆括号
* for k,v in t do 这个语句是对table中的所有值遍历, k中存放名称, v中存放值
3.把Lua变成类似XML的数据描述语言
例e09.lua
- function contact(t)
- -- add the contact ‘t’, which is
- -- stored as a table, to a database
- end
- contact { name = "Game Developer",
- email = "hack@ogdev.net",
- url = "http://www.ogdev.net",
- quote = [[ There are
- 10 types of people
- who can understand binary.]]
- } contact { -- some other contact }
程序说明
* 把function和table结合, 可以使Lua成为一种类似XML的数据描述语言
* e09中contact{...}, 是一种函数的调用方法, 不要弄混了
* [[...]]是表示多行字符串的方法
* 当使用C API时此种方式的优势更明显, 其中contact{..}部分可以另外存成一配置文件
4.试试看
想想看哪些地方可以用到例e09中提到的配置方法呢?
文章名称:通过例子学习Lua(4)—函数的调用
分享链接:http://www.shufengxianlan.com/qtweb/news37/245787.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联