调用表是否是有效操作?

问题描述 投票:0回答:1

我对lua非常陌生,但需要在lua中进行编程。

我有以下代码

local Events={}
Events('a')

据我粗略的理解,Events是一个表,不能像函数一样调用该表。

我将上述声明粘贴到带有Lua插件的Intellij Idea,带有EmmyLua插件的Intellij Idea和ZeroBrane Studio中。 IDE均未在代码中静态提示错误。

见图。 Intellij显示一个绿色的勾,表示没有静态分析错误。在我按下运行按钮之前,ZeroBrane Studio不会显示任何警告或错误。

enter image description here

[https://github.com/mpeterv/luacheck说代码没问题

>luacheck --version
Luacheck: 0.23.0
Lua: PUC-Rio Lua 5.3
Argparse: 0.6.0
LuaFileSystem: 1.6.3
LuaLanes: 3.10.1

Total: 2 warnings / 0 errors in 1 file

>luacheck untitled.lua
Checking untitled.lua                             OK

Total: 0 warnings / 0 errors in 1 file

谁能澄清为什么这些IDE无法静态检测到此简单错误?有时可以调用表是有效的操作吗?

我对lua还是很陌生,但是需要在lua中进行编程。我有以下代码:local Events = {} Events('a')从我的粗略理解来看,Events是一个表,并且不能像...

lua static-analysis
1个回答
1
投票

如果将表赋予其中包含__call元方法的元表,则可以像函数一样调用表。 See the docs.

© www.soinside.com 2019 - 2024. All rights reserved.