当前位置 : 主页 > 网络编程 > lua >

是否可以在Lua中模拟绑定?

来源:互联网 收集:自由互联 发布时间:2021-06-23
给定带有一个参数的lua函数,是否可以将此参数绑定到固定值以获取不带参数的函数? 更一般地说,如何将lua函数的某些输入参数绑定到某些值? 是的,这可以在几乎任何具有一流值功能
给定带有一个参数的lua函数,是否可以将此参数绑定到固定值以获取不带参数的函数?

更一般地说,如何将lua函数的某些输入参数绑定到某些值?

是的,这可以在几乎任何具有一流值功能的语言中完成.

function f1(a)
   return a+1
end

function bind(a)
   return function() return f1(a) end
end

local f2 = bind(42)
print(f2())
-- 43

此特定示例适用于特定函数和参数数量,但可以轻松扩展为采用任意函数/参数.

网友评论