【发布时间】:2012-08-02 19:19:35
【问题描述】:
我有一个问题,当我这样做时
luaL_loadstring(luaState, "return 3, 4, 5");
我在堆栈上有 3 个值,但是当我尝试调用函数时
luaL_loadstring(luaState, vhs:get_sender_resolutions());
get_sender_resolutions = {function (self)
local rresc = self.iface:GetSenderResolutionCount()
local resolutions = {}
for i=0,rresc-1 do
local res = self.iface:GetSenderResolution(i)
printdump (res, "#"..i.." = ")
table.insert(resolutions, res)
end
return 6, 7, 8
我在堆栈上只有 1 个值 - 函数?我错过了什么吗??
【问题讨论】:
-
您用 3 种(三种!)语言标记了您的问题,但代码的语法与其中两种不匹配。我不确定您的问题是否与所有 3 种语言有关。您需要重新陈述您的问题或解释为什么它被标记为所有 3 种语言?
-
@YePhIcK 他的问题中提到的
luaL_loadstring和堆栈与Lua 和C(或可能的C++)之间的绑定有关。关注 Lua 的人具有回答这个问题的专业知识。搜索的人可以在过滤包含这些标签的帖子时找到用途。 -
上面get_sender_resolutions的代码不完整;一方面,有一个未关闭的
{;该功能也没有end。向我们展示真正的代码。