我正在就此事寻求帮助,因为我无法完全掌握是否可能,更不用说我是否做错了。
my = {
Question = AskQuestion()
}
function AskQuestion()
return "What do you want to know?"
end
我的目的是打印(my.Question)并让它返回“你想知道什么?”,到目前为止,我在尝试让它工作时遇到了头痛和错误。
此外,如果这个问题得到解决,我可以推测,与其自己弄清楚,我还不如另外问一下。将值传递给函数怎么样?
my = {
Answer = MyAnswer(vAnswer)
}
function MyAnswer(vAnswer)
if vAnswer == "42" then return "Life.." end
end
所以在这里我想做, print(my.Answer(42)) 并返回“Life..”
最佳答案
只需反转你的声明:
function AskQuestion()
return "What do you want to know?"
end
my = {
Question = AskQuestion()
}
由于 Lua 是解释性的,因此您必须先定义所有内容,然后才能使用。
设置变量时,您不需要传递 (vAnswer),因为它不是定义,它只是现有函数的用法,因此更改为:
function MyAnswer(vAnswer)
if vAnswer == "42" then return "Life.." end
end
my = {
Answer = MyAnswer
}
我在这里假设您使用的是不同的我的
表,但您应该得到图片。
关于Lua - 可以从表值调用函数及其返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20598530/