Lua 函数

发布时间: 更新时间: 总字数:321 阅读时间:1m 作者: 分享 复制网址

Lua 函数定义一个代码块,通过传递参数后执行,并返回对应的执行结果给函数调用处

函数定义

Lua 函数使用关键字 function 定义

# 全局函数
function function_name (args)  -- args 表示参数列表,函数的参数列表可以为空
   -- body
end

function_name = function (args)
  -- body
end

# 局部函数
local function function_name (args)
  -- body
end

说明:

  • 函数调用 function_name()
    • 其中 () 中需要函数参数,参数个数不受限制,可以传入任意数量的实参,默认为 nil,多的参数会被函数自动忽略
    • 若参数是字符串、table,() 可以省略
  • 变长参数 local function function_name( ... ),访问的时候也要使用 ...
  • 返回值 return 关键字
    • return 1, "lua"
    • local x, y = function()

可变参数

函数参数列表使用 ... 表示接受可变参数,示例

local function t(...)
  local arg={...}             -- 将可变参数保存到 table 里
  print(#arg)                 -- 输出参数长度
  for k, v in ipairs(arg) do  -- 遍历
    print("arg ", k, " is ", v)
  end
end

说明:

  • select(n, ...) 获取可变参数的第 n 个参数
  • 获取参数的数量
    • #{...}
    • select("#", ...)
  • unpack(arg) 可以将表拆分为参数列表
Home Archives Categories Tags Statistics
本文总阅读量 次 本站总访问量 次 本站总访客数