07 2014 档案

摘要:日期:2014.7.14 PartⅡ Object-Oriented ProgrammingLua中实现面向对象编程。“如同OOP对象,table拥有状态;如同OOP对象,table拥有标识符---self,用来与其他变量做区分,而且两个table拥有同样的值也是不同的object(对象),因为s... 阅读全文
posted @ 2014-07-18 23:29 Le Ciel 阅读(201) 评论(0) 推荐(0)
摘要:日期:2014.7.11Part Ⅱ Modules and Packages模块(module)是一些(既不是lua也不是c)能被函数require加载的代码,这些代码的作用在于创建并返回table。这个模块输出的函数、常量等都是定义在这个table中,其工作原理类似于命名空间。Lua中所有的标准... 阅读全文
posted @ 2014-07-17 22:58 Le Ciel 阅读(212) 评论(0) 推荐(0)
摘要:这一部分应该挺重要的,Lua中唯一的数据结构便是table,几乎所有的的数据操作都是在table的基础上进行。而本文提到的元表和元方法,便是帮助table实现更强大的功能而设计的。日期:2014.7.11Part ⅡMetatables and MetamethodsLua中不能直接对table进行... 阅读全文
posted @ 2014-07-13 16:01 Le Ciel 阅读(270) 评论(0) 推荐(0)
摘要:PartⅠ 已经看完了,然后进入了partⅡ阶段了。日期:2014.7.6Part Ⅱ 11Data StructuresLua中的数据结构都是以table实现的队列List = {}function List.new() return { first = 0, last = -1}endL... 阅读全文
posted @ 2014-07-13 15:44 Le Ciel 阅读(254) 评论(0) 推荐(0)
摘要:日期:2014.7.3Coroutine(协同程序)2014.7.10补充(纯粹翻译书)Lua中的协同程序类似于多线程概念中的线程:逐行执行,有自己独立的栈空间,自己的局部变量,自己的指令指针;但是Lua中的协同程序可以共享全局变量,并且可以多个协同程序间互相共享几乎任何变量。与线程最主要的区别在... 阅读全文
posted @ 2014-07-11 13:29 Le Ciel 阅读(196) 评论(0) 推荐(0)
摘要:Compilation,Executioin,and ErrorsLua的assert函数:assert(v,mess)相当于C的断言,当v为nil或者false将触发错误,mess为发生错误时返回的信息dofile函数不仅会加载chunk(语句快),并且会运行,而loadfile只会加载chunk... 阅读全文
posted @ 2014-07-10 21:40 Le Ciel 阅读(175) 评论(0) 推荐(0)
摘要:Part1-7:Iterators and the Gnenric for(迭代器和泛型for)泛型for语法形式:for in do endvar_list:一个或多个变量名,以逗号分隔;一般来看也多是一个元素;exp_list:一个或多个表达式的列表,也是以逗号分隔。一般来看,表达式... 阅读全文
posted @ 2014-07-03 22:57 Le Ciel 阅读(183) 评论(0) 推荐(0)
摘要:Lua:StatementLua支持:赋值、控制结构、函数调用等,另外Lua也支持一些所谓“奇葩”的语句段,那就是多重赋值还有局部声明。4.1 Assignment基本的赋值同其他语言类似:a = "hello" .. "world"所谓“奇葩”的多重赋值:a,b = "hello","world"... 阅读全文
posted @ 2014-07-01 19:42 Le Ciel 阅读(207) 评论(0) 推荐(0)