lua tostring 函数 可以转化函数类型吗
展开全部
不光是从控制台吧,也可能是从print函数主调方的调用参数获取的。
arg是保存调用参数的table,for循环语句遍历了这个table,其中i是元素索引,v是元素值,可能是数值,字符串,也可能是其他任何类型,循环体把每个元素都用万能字符串转换函数tostring转换成字符串,连接在全局字符串printResult里。这个函数按说应该把printResult作为返回值的,为啥用全局串,我也不太清楚。
arg是函数内默认的局部变量,它保存了...表示的可变参数。例如,我们希望声明一个函数,有一个固定参数,若干个可变参数,最典型的例子是类似C语言的printf,它有一个格式字符串,和若干个参数,例如printf("%d, %d, %d", 10, 20, 30),后面的参数数量和类型是可变的,在LUA里就是这样声明的:function printf(str, ...),如果我们像上面那样调用,则在函数内部,就有这样的参数结构:str = "%d, %d, %d",arg = {10, 20, 30; n = 3},arg的结构是自动生成的,可以这样索引:arg[1] = 10,arg[2] = 20,arg[3] = 30,arg.n = 3,n表示的是可变参数的数目,如果没有的话就是arg.n = 0
arg是保存调用参数的table,for循环语句遍历了这个table,其中i是元素索引,v是元素值,可能是数值,字符串,也可能是其他任何类型,循环体把每个元素都用万能字符串转换函数tostring转换成字符串,连接在全局字符串printResult里。这个函数按说应该把printResult作为返回值的,为啥用全局串,我也不太清楚。
arg是函数内默认的局部变量,它保存了...表示的可变参数。例如,我们希望声明一个函数,有一个固定参数,若干个可变参数,最典型的例子是类似C语言的printf,它有一个格式字符串,和若干个参数,例如printf("%d, %d, %d", 10, 20, 30),后面的参数数量和类型是可变的,在LUA里就是这样声明的:function printf(str, ...),如果我们像上面那样调用,则在函数内部,就有这样的参数结构:str = "%d, %d, %d",arg = {10, 20, 30; n = 3},arg的结构是自动生成的,可以这样索引:arg[1] = 10,arg[2] = 20,arg[3] = 30,arg.n = 3,n表示的是可变参数的数目,如果没有的话就是arg.n = 0
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询