Lua返回一个Closures函数实例
代码如下:
do function Button(x) print("Call Button"); x.action(); print(x.label); end function add_to_display(digit) print("Call add_to_display"); print(digit); end function digitButton(digit) return Button{//return a table and the function(Button), it means that the Button receives the param(the table{...}) label = tostring(digit), action = function() print("digit: ", digit); add_to_display(digit); end } end local fun = digitButton(3); end
写个简单的迭代器:
代码如下:
do t_ = {9, 2, 3, 4}; function values(t) local i = 0; return function() i = i + 1; return t[i]; end end iter = values(t_); while true do local element = iter(); if element == nil then break; end print(element); end end
相关推荐
峰哥 2020-09-23
陈云佳 2020-08-15
wqiaofujiang 2020-07-05
wordmhg 2020-06-26
wqiaofujiang 2020-06-16
zllbirdonland 2020-06-16
eroshn 2020-06-10
长安长夜Saint 2020-06-07
Dawnworld 2020-06-07
fansenjun 2020-03-01
CSDNMrWang 2020-05-11
Dawnworld 2020-05-05
陈云佳 2020-04-21
Neptune 2020-04-20
shunelly 2020-04-16
aolishuai 2020-04-15
YukiRain 2020-04-14
陈云佳 2020-03-07
陈云佳 2020-03-05