首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 其他开发语言 >

LUA的require函数的小疑点

2012-06-22 
LUA的require函数的小问题require1require3_LOADED[1]nilrequire1希望大家解释一下。第三行出了错

LUA的require函数的小问题
require"1"

require"3"
_LOADED["1"]=nil


require"1"

希望大家解释一下。

第三行出了错误。

这是文中的描述:
require的另一个功能是避免重复加载同一个文件两次。Lua保留一张所有已经加载的文件的列表(使用table保存)。如果一个加载的文件在表中存在require简单的返回;表中保留加载的文件的虚名,而不是实文件名。所以如果你使用不同的虚文件名require同一个文件两次,将会加载两次该文件。比如require "foo"和require "foo.lua",路径为"?;?.lua"将会加载foo.lua两次。我们也可以通过全局变量_LOADED访问文件名列表,这样我们就可以判断文件是否被加载过;同样我们也可以使用一点小技巧让require加载一个文件两次。比如,require "foo"之后_LOADED["foo"]将不为nil,我们可以将其赋值为nil,require "foo.lua"将会再次加载该文件。

[解决办法]
这个问题很难,我也不清楚,不过你可以认真的看书,那样可能就知道答案啦。

热点排行