【问题标题】:Unusual LUA function syntax不寻常的 LUA 函数语法
【发布时间】:2018-12-08 14:23:48
【问题描述】:

我是一个新的 LUA 用户,版本 5.3,我遇到了一个有点令人困惑的函数语句。我试图在参考手册中找到一些解释,但无济于事。

function myfunc.execute()
   print("Hello")
end

我不明白这种语法。这是否意味着要添加“.execute()”?

以下是在 myfunc 表中无法打印的示例文件。

local myfunc = {}
myfunc.version = "2.0"

function myfunc.execute()
   print("Hello World!")
end

return myfunc

当我运行它时,我没有打印出:“Hello World!”。我试图了解在文件中执行上述脚本时 lua 是如何工作的。为什么打印语句不起作用?

【问题讨论】:

  • myfunc 是一个表,execute 是一个位于该表内的函数。
  • @EgorSkriptunoff 感谢您的洞察力。你能看看编辑过的问题和评论吗?感谢您的意见。
  • @lhf 感谢您的链接:-)

标签: lua


【解决方案1】:

在您的示例中,您只是定义了myfunc 表中的execute 方法。删除return myfunc 行,然后像这样调用你的函数:

myfunc.execute()

execute 这个词没有什么特别之处。它不是 Lua 关键字。它只是你给函数起的名字。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-05-03
    • 2018-09-17
    • 1970-01-01
    • 2011-06-17
    • 2011-10-30
    • 1970-01-01
    • 1970-01-01
    • 2013-05-08
    相关资源
    最近更新 更多