【发布时间】:2020-12-08 04:39:57
【问题描述】:
我现在开始研究 lua 中的load() 函数,但我无法获取函数返回的值
我尝试了这两种方法来用load()执行一个函数并收集它们的值
function sumvalues()
return 5+3
end
local func = "sumvalues()"
print(load(func))
local func = "return 5+3"
print(load(func))
但它们只返回函数,而不是从它们返回的值
function: 0000000000cf0e50
function: 0000000000cf0df0
有谁知道我如何使用load() 执行功能并收集他们的return?
我还想知道如何使用与load() 中的变量同名的字符串来收集变量,我尝试这样做:
hello = "Hello World"
print(load("hello"))
但他给出了这个错误:
nil [string "hello"]:1: syntax error near <eof>
有人知道我怎么能做到这一点吗?感谢您的关注!
【问题讨论】:
-
如果
load返回一个函数,也许你应该调用它?print(load("return 5+3")())看起来很有希望.... -
@exnihilo 成功了,非常感谢您的精彩回答
标签: function variables lua runtime-error