Lua
冬之晓东
国家对地观测科学数据中心信息发布
展开
-
Lua语言学习(一)------Lua语言闭包代替范性for语义的迭代器的原理
今天看Lua基础里面的迭代器和泛性for语义,感觉很有意思,特别是为什么闭包可以用作泛性for语义的迭代器这一点,需要思考一下,所以记录一下: 首先我们要知道循环过程中范性for在自己内部保存迭代函数,实际上它保存三个值:迭代函数、状态常量、控制变量。然后for语义执行的过程为: 第一,初始化,计算in后面表达式的值,表达式应该返回范性for需要的三个值:迭代函数、状态常量、控制变量;与多原创 2016-08-14 08:51:00 · 835 阅读 · 0 评论 -
Lua语言学习(二)------Lua算术运算的Metamethods
Lua算术运算的Metamethods这一部分我们通过一个简单的例子介绍如何使用metamethods。假定我们使用table来描述结合,使用函数来描述集合的并操作,交集操作,like操作。我们在一个表内定义这些函数,然后使用构造函数创建一个集合:Set = {}Set.mt = {} --将所有集合共享一个metatablefunction Set.new (t) --新建一个表原创 2016-08-21 22:44:07 · 1746 阅读 · 0 评论