【发布时间】:2013-03-29 13:58:09
【问题描述】:
这些myFuncs有什么区别?
代码 1
function wrapper()
local someVariable = 0;
function myFunc(n)
if n > 0 then return myFunc(n-1) end
end
return myFunc;
end
代码 2
function wrapper()
local someVariable = 0;
local myFunc = function(n)
if n > 0 then return myFunc(n-1) end
end
return myFunc;
end
代码 3
function wrapper()
local someVariable = 0;
local myFunc;
myFunc = function(n)
if n > 0 then return myFunc(n-1) end
end;
return myFunc;
end
因为当我在 myFunc 本身中引用函数名称 myFunc 时。他们的行为不一样。 (例如,upvalue someVariable...有问题:-S)
【问题讨论】:
标签: functional-programming lua