lua 模块
概述
lua 模块类似于封装库
将相应功能封装为一个模块, 可以按照面向对象中的类定义去理解和使用
使用
模块文件示例程序
mod = {} mod.constant = "模块常量" function mod.func1() return "func1" end local function func2() print("local func2") return "func2" end function mod.func3() print("func3") return func2() end return mod
使用模块示例程序
require "module" print(mod.constant) print(mod.func3())
通过以上示例, 可以看出, 模块文件其实就是定义了一个类, 里面有属性和成员
引入模块时使用 require 关键词, 后面跟的是模块名 (module),文件的名字, 而不是里面声明的变量 mod)
可以理解为其实就是引入了一个文件中的代码
加载机制
模块文件需要放到相应的目录才可以使用 require 加载
这个路径可以通过 LUA_PATH 环境变量指定, 可以写入 ~/.profile, 或者其他 shell 加载时会读取的配置文件均可, 在 ~/.profile 加入以下代码
export LUA_PATH="~/lua/?/lua;;"