Lua 零膜&x27;s分析:“;未知全局变量“;关于库对象

Lua 零膜&x27;s分析:“;未知全局变量“;关于库对象,lua,marmalade,zerobrane,marmalade-quick,Lua,Marmalade,Zerobrane,Marmalade Quick,我开始在ZeroBrane Studio中使用Project/Analyze进行一个果酱快速项目,我发现它非常有用,可以让我直接了解全局范围和局部范围 但这里有一个麻烦:它指向库——基本上——作为未定义的全局变量: .../resources/main.lua(11): first use of unknown global variable 'system' .../resources/main.lua(12): first use of unknown global variable 'js

我开始在ZeroBrane Studio中使用Project/Analyze进行一个果酱快速项目,我发现它非常有用,可以让我直接了解全局范围和局部范围

但这里有一个麻烦:它指向库——基本上——作为未定义的全局变量:

.../resources/main.lua(11): first use of unknown global variable 'system'
.../resources/main.lua(12): first use of unknown global variable 'json'
.../resources/main.lua(13): first use of unknown global variable 'device'
.../resources/main.lua(14): first use of unknown global variable 'physics'
.../resources/main.lua(15): first use of unknown global variable 'color'
.../resources/main.lua(16): first use of unknown global variable 'director'
.../resources/main.lua(17): first use of unknown global variable 'key'
是否有方法抑制库(或特定变量名)的警告

作为部分步骤,我开始将其放在文件开头-它不能解决投诉,只是将其放在最上面:

local system = system
local json = json
local device = device
local physics = physics
local color = color
local director = director
local key = key

顺便问一下,这是否会影响性能?似乎我正在将全局
控制器
转换为本地
控制器
,这在理论上更快…

目前我没有办法关闭特定变量上的警告,但有一种解决方法可以用来抑制警告。您可以使用
localdirector=\G.director
localdirector=rawget(\u G,“director”)
代替
localdirector=director


就更快的访问而言,是的,使用局部变量比表访问更快(请参见第3页,共页),但您可能需要在循环中运行大量调用才能看到差异。请注意,LuaJIT确实如此,这可能会改变性能影响。

不知道,谢谢!
\u G.
这个把戏对我很有用。也就是说,一开始我会做
localdirector=G_u.director
等处理这些投诉的工作,现在我可以只关注我的变量。我将把它视为我和分析器之间的“导入”样板合同:)