注册 登录
编程论坛 Lua论坛

Lua函数返回类型不同,输出值有什么区别

reset_lin 发布于 2018-08-17 11:46, 3144 次点击
function newCounter()
     n = 0
     n = n + 1
     return function()
          n = n + 1
          return n
     end
 end
 
 counter = newCounter()
 print(counter())
 print(counter())
为什么输出为 1 2

 function newCounter()
     n = 0
     n = n + 1
     return n
 end
 counter = newCounter()
 print(counter)
 print(counter)
输出为 1 1 这两种输出的数据为什么不一样,求大神解答
1 回复
#2
sunus2018-08-30 11:27
建议LZ去看看闭包的介绍。
1