Lua成立了不同的口译员?

时间:2017-05-04 02:44:40

标签: lua interpreter

我下载了" LuaForWindows_v5.1.4-46.exe"使用名为SciTE的IDE。 但是当我试图执行时

print(a)

a尚未分配。当我使用SciTE交互式Lua时,输出是"变量' qqqqqq'没有宣布"。 如果我打开Cmd使用

lua -e "print(aaaa)"

命令输出将是" nil",与我在书中看到的相同。

谁知道为什么不同,导致Lua有不同的解释器?

1 个答案:

答案 0 :(得分:0)

这是同一个翻译。像C ++一样的Lua允许'函数重载'; Scite IDE在交互式会话期间重载打印功能,以提供更易读的调试信息。 (由Scite程序作者做出的个人设计决定。)原生Lua解释器打印功能将为未声明的变量输出nil。当您在Scite中运行Lua脚本时,Scite将确保您的脚本在所有方面都能看到纯Lua解释器行为。一般情况下,Lua IDE就像Scite一样,你会发现他们都试图在设计和调试过程中添加一些小助手,从代码完成到寻找缺失的'end'语句等等。但是当你点击运行按钮时,请放心,IDE会确保你的脚本看到nuthin,但是lua.org发布了解释器。