Function 函数给出奇怪的错误?

Function 函数给出奇怪的错误?,function,lua,Function,Lua,我测试它是为了让它能够正常工作,但我总是得到和我在下面发布的相同的错误。我对lua还很陌生,所以我希望我能让它发挥作用:D 并给出错误: function returnNumPlus1(num) return num + 1 end print(returnNumPlus1(0)) print(returnNumPlus1(9000)) local func1 = returnNumPlus1 print(func1(11)) 有人知道为什么吗?谢谢 假设您在lua RE

我测试它是为了让它能够正常工作,但我总是得到和我在下面发布的相同的错误。我对lua还很陌生,所以我希望我能让它发挥作用:D 并给出错误:

    function returnNumPlus1(num)
    return num + 1
end

print(returnNumPlus1(0))

print(returnNumPlus1(9000))

local func1 = returnNumPlus1
print(func1(11))

有人知道为什么吗?谢谢

假设您在lua REPL中运行此代码,则需要将
func1
定义为全局而不是本地,因为本地上下文特定于REPL中的每一行执行,并且不适用于下一行

尝试:


或者,把整个东西放在
do
<代码>结束块。
stdin:1: attempt to call global 'func1' (a nil value)
stack traceback
        stdin:1: in main chunk
        [C]: ?
function returnNumPlus1(num)
    return num + 1
end

print(returnNumPlus1(0))

print(returnNumPlus1(9000))

func1 = returnNumPlus1
print(func1(11))