我目前正在尝试使用串联、加载字符串和 for 循环的组合来定义一个函数。
这是我目前拥有的那种东西:
> for f=1,8 do
loadstring("function f" .. f .. " () print('" .. f .. "') end")
end
> f1()
stdin:1: attempt to call global 'f1' (a nil value)
stack traceback:
stdin:1: in main chunk
[C]: ?
该函数以以下形式评估一组块:'function f () print() end'。但是,如您所见,它似乎没有正确地将函数保存到变量 f1-f8 中。