Lua资料之模块

require 函数
Lua 提供了一个名为 require 的函数用来加载模块。要加载一个模块,只需要简单地调用require “file” 就可以了,file 指模块所在的文件名。这个调用会返回一个由模块函数组成的table,并且还会定义一个包含该 table 的全局变量。在 Lua 中创建一个模块最简单的方法是:创建一个 table,并将所有需要导出的函数放入其中,最后返回这个 table 就可以了。相当于将导出的函数作为 table 的一个字段,在 Lua 中函数是第一类值,提供了天然的优势。
把下面的代码保存在文件 my.lua 中

local foo={}
local function getname()
    return "Lucy"
end
function foo.greeting()
    print("hello " .. getname())
end
return foo

把下面代码保存在文件 main.lua 中,然后执行 main.lua,调用上述模块。

local fp = require("my")
fp.greeting()     -->output: hello Lucy

注:对于需要导出给外部使用的公共模块,处于安全考虑,是要避免全局变量的出现。 我们可以使用 lj-releng 或 luacheck 工具完成全局变量的检测。

猜你喜欢

转载自blog.csdn.net/sky6even/article/details/81711076