【水桥月与Lua】——Lua的Module
来源:互联网 发布:免费工程预算软件下载 编辑:程序博客网 时间:2024/06/05 06:03
Lua 的 Module
Lua从5.1开始官方提供了module的实现标准
使用module的时候有一点比较容易忽略,module指令运行完之后,整个环境被压栈,所以前面全局的东西再看不见了。
比如定义一个test 模块,使用
Module(“test”)
之后,下面的再看不见前面的全局变量,那么如果在这个module里面想要实现print函数怎么样呢?可以用一个简单的实现方法local print =print 这样来实现
这样print是一个local变量,下面也是可以看到的。
还有一种巧妙的方式,lua 5.1提供一个package.seeall 可以作为module的option传入
Module(“test”,package.seeall)
这样就ok了。——以上的使用经验是来自云风大大的,下面举一个自己写的实验例子来记录自己的这个学习。
做了一个实验的test,过程与源码如下
在同级目录下面定义了3个文件,module.lua , module_call.lua , module1.lua
Module.lua
module("Data")function add(r,i)return r+iend
Module1.lua
module("Data")function del(r,i)return r-iend
Module_call.lua
package.path = package.path..";../?.lua"require "module"require "module1"result = Data.add(1,2)print(result)result1 = Data.del(1,2) print(result1)
这样运行module_call.lua的结果是
3-1
意思就是require之后可以统一用模块module这个全局环境来调用里面的函数以及数据,
这样写有一个明显的好处是我们可以将配置表的所有数据统一放进声明模块data里面,从而达到让配置数据统一的目的。
- 【水桥月与Lua】——Lua的Module
- lua require与module
- Lua的模块编写与module函数
- Lua的模块编写与module函数
- Lua的模块编写与module函数
- Lua的模块编写与module函数
- lua 5.1 的 module
- lua 5.1 的 module
- Lua笔记——1.模块Module
- Lua Module
- lua module
- Lua Module
- Lua中module的用法
- Lua-nginx-module的安装
- Lua中module的用法
- 基础补充18:Lua的模块编写与module函数
- Lua中的模块与module函数详解
- Lua中的模块与module函数
- C++ Unicode SBCS 函数对照表
- flex 拖拽
- 让页面强制以IE8方式 打开的方法
- 关于成功案例 - 汉纳软件
- Windows 7下如何安装和配置IIS 7和ASP
- 【水桥月与Lua】——Lua的Module
- uboot_tftp下载
- .NET WinForm编程Q&A系列(二)——反射机制
- ACM-1002(使用STL)
- JSP 相关配置文件
- Fragments
- oracle不显示打印语句
- 如何查看exe文件调用的命令行参数
- Buy-in/Sell-Out