主页 > 知识库 > Lua返回一个Closures函数实例

Lua返回一个Closures函数实例

热门标签:Linux服务器 网站排名优化 百度竞价排名 铁路电话系统 服务外包 呼叫中心市场需求 AI电销 地方门户网站

复制代码 代码如下:

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

标签:兰州 仙桃 黄山 湘潭 崇左 衡水 湖南 铜川

巨人网络通讯声明:本文标题《Lua返回一个Closures函数实例》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266