假设我有以下两个Lua文件:
在a.lua:
local x = 5 f = dofile'b.lua' f()
在b.lua:
local fun = function() print(x) end return fun
然后,如果我在shell中运行luajit a.lua,则打印nil,因为在b.lua中定义的函数中无法看到x.预期的打印应为5.但是,如果我将所有内容放在一个文件中,那么它正是我想要的:
在aa.lua:
local x = 5 local f = function() print(x) end f()
运行luajit aa.lua它打印5.
那么为什么x在第一种情况下无法看到呢?
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。