use*_*069 5 lua function append dynamic
我有一个函数,我想在程序运行时动态添加.
假设我有Foo功能:
function foo()
Function1()
Function2()
Function3()
end
Run Code Online (Sandbox Code Playgroud)
我想将Foo()更改为:
function foo()
Function1()
Function2()
Function3()
Function4()
end
Run Code Online (Sandbox Code Playgroud)
后来在该计划中.有没有办法做到这一点?
去做就对了.你写的代码工作得很好.Lua中的函数可以根据需要重新定义.
如果你不知道是什么foo,你可以这样做:
do
local old = foo
foo = function () old() Function4() end
end
Run Code Online (Sandbox Code Playgroud)
或者使用功能表可能更清楚:
local F={ Function1, Function2, Function3 }
function foo()
for i=1,#F do F[i]() end
end
Run Code Online (Sandbox Code Playgroud)
后来,做
F[#F+1]=Function4
Run Code Online (Sandbox Code Playgroud)
而且你不需要重新定义foo.