Lua返回Closures函数 Lua返回一个Closures函数实例

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

Lua返回Closures函数 Lua返回一个Closures函数实例

  2021-03-21 我要评论
想了解Lua返回一个Closures函数实例的相关内容吗,在本文为您仔细讲解Lua返回Closures函数的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点: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

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们