Lua语言中的这一行有什么作用?

时间:2016-01-22 11:23:46

标签: lua

Lua语言中的这一行是什么?

module(..., package.seeall)

据我了解,她试图在项目中加载其他bibiliotek。如果是这样的话,我在哪里写的C文件扩展了语言Lua的标准机会,即附加功能。

1 个答案:

答案 0 :(得分:0)

module()函数用于定义Lua 5.1中的Lua模块。其主要的可见效果是全局变量(特别是全局函数定义)的所有赋值最终都在模块表中,而不是在globals表中。它通过替换当前环境来实现。不幸的是,这意味着对全局变量的所有读取访问也会重定向到模块表,因此除非您在module()调用之前创建本地别名,否则您将无法访问这些全局变量。 package.seeall参数通过在模块表上设置元表来缓解此缺陷,从而允许您通过模块表访问全局变量。 module()的第一个参数只是模块名称,而...包含通过require()调用请求的名称(&{34;功能" module()是你可以定义一个不同于所请求的模块的模块。无论如何,module()在Lua 5.2中已弃用,默认情况下在Lua 5.3中不可用。有关原因,请参阅here