- 博客(8)
- 资源 (4)
- 收藏
- 关注
原创 《Programming in Lua 3》读书笔记(十二)
日期:2014.7.14 PartⅡ Object-Oriented ProgrammingLua中实现面向对象编程。“如同OOP对象,table拥有状态;如同OOP对象,table拥有标识符---self,用来与其他变量做区分,而且两个table拥有同样的值也是不同的object(对象),因为self的不同;如同OOP对象,table也有生命周期,这个生命周期与谁在何
2014-07-18 23:29:13 785
原创 《Programming in Lua 3》读书笔记(十一)
日期:2014.7.11Part Ⅱ Modules and Packages模块(module)是一些(既不是lua也不是c)能被函数require加载的代码,这些代码的作用在于创建并返回table。这个模块输出的函数、常量等都是定义在这个table中,其工作原理类似于命名空间。Lua中所有的标准库都是模块,使用方法:e.g.local m = requir
2014-07-17 22:58:24 1060
原创 《Programming in Lua 3》读书笔记(十)
日期:2014.7.11Part Ⅱ Metatables and MetamethodsLua中不能直接对table进行相加、比较等操作。除非使用元表(Metatables)。元表可以使得我们改变元素在处理未定义操作的应对行为,如定义两个table直接的相加操作。Lua在处理两个table的相加操作时会首先检查两个table是否有元表,且元表中是否有 __add 元方法字段,
2014-07-13 16:01:41 1295
原创 《Programming in Lua 3》读书笔记(八)
日期:2014.7.3Coroutine(协同程序)2014.7.10补充(纯粹翻译书)Lua中的协同程序类似于多线程概念中的线程:逐行执行,有自己独立的栈空间,自己的局部变量,自己的指令指针;但是Lua中的协同程序可以共享全局变量,并且可以多个协同程序间互相共享几乎任何变量。与线程最主要的区别在于:理论上讲,一个程序可以并行运行多个线程,但是Lua中的协同程序一次只能运行一个,并
2014-07-11 13:29:03 866
原创 《Programming in Lua 3》读书笔记(七)
Lua的assert函数:assert(v,mess)相当于C的断言,当v为nil或者false将触发错误,mess为发生错误时返回的信息dofile函数不仅会加载chunk(语句快),并且会运行,而loadfile只会加载chunk,但会将语句快作为一个function返回相比较于dofile函数,loadfile函数有返回值,便于我们处理错误,并且适合多次调用,因为可以将l
2014-07-10 21:40:25 901
原创 《Programming in Lua 3》读书笔记(六)
Iterators and the Gnenric for泛型for语法形式:for in do endvar_list:一个或多个变量名,以逗号分隔;一般来看也多是一个元素exp_list:一个或多个表达式的列表,也是以逗号分隔。一般来看,表达式列表只有一个元素,就是调用一个迭代器factoryeg.--返回t的所有元素function
2014-07-03 22:57:39 841
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人