![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Lua
只为你疯狂
屌丝男一枚
展开
-
Lua程序设计第二版(笔记)第九章协同程序
一个具有多个协同程序的程序在任意时刻只能运行一个协同程序,并且正在运行的协同程序只会在其显示地要求挂起时,它的执行才会暂停。Lua将所有关于协同程序的函数放置在一个名为"coroutine"的table中。函数create用于创建新的协同程序,它只有一个参数,就是一个函数。该函数的代码就是协同程序所需执行的内容。create会返回一个thread类型的值,用以表示新的协同程序。通常create原创 2013-09-30 09:44:31 · 629 阅读 · 0 评论 -
Lua程序设计第二版(笔记) 第十一章数据结构
Lua中的table不是一种简单的数据结构,它可以作为其他数据结构的基础。其他语言提供的数据结构,如数组、记录、线性表、队列、集合等,在Lua中都可以通过table来表示。Lua的table来实现这些结构效率高。数组使用整数索引table即可在Lua中实现数组。因此,数组没有一个固定的大小,可以根据需要增长。a={} --新建一个数组for i = 1, 1000 doa[原创 2013-09-27 17:07:36 · 112 阅读 · 0 评论 -
Lua程序设计第二版(笔记) 第七章迭代器与泛型for
迭代器与closure所谓"迭代器"就是一种可以遍历一种集合中所有元素的机制。Lua中,通常将迭代器表示为函数。每调用一次函数,即返回集合中的“下一个”元素。泛型for的语义泛型for在循环过程内部保存了迭代器函数。实际上它保存着3个值:一个迭代器函数、一个恒定状态和一个控制变量。泛型for的语法如下:for in doend是一个或多个变量名的列表,以原创 2013-09-27 09:25:18 · 628 阅读 · 0 评论 -
Lua程序设计第二版(笔记) 第六章深入函数
深入函数原创 2013-09-26 09:28:53 · 1644 阅读 · 0 评论 -
Lua程序设计第二版(笔记) 第五章函数
在 Lua中,函数是一种对语句和表达式进行抽象的主要机制。函数既可以完成某项特定的任务,也可以只做一些计算并返回结果。若一个函数只有一个参数,并且此参数是一个字面字符串或table构造式,那么圆括号可有可无。例如:print "hello world' dofile 'a.lua'print [[a multi-line message]]f{x = 10, y=20}原创 2013-09-25 09:34:48 · 653 阅读 · 0 评论 -
Lua程序设计第二版(笔记) 第四章语句
1.Lua允许"多重赋值",每个变量之间以逗号分隔。例如:a,b = 10, 2*102.Lua中提供局部变量,通过local语句来创建局部变量:j = 10 --全局变量local i = 1 --局部变量原创 2013-09-24 09:59:17 · 632 阅读 · 0 评论 -
Lua程序设计第二版(笔记) 第三章表达式
关系运算符: = == ~=逻辑操作符 and or 和 not,所有逻辑操作符将false 和nil视为假,其他任何东西视为真。原创 2013-09-23 10:45:46 · 591 阅读 · 0 评论 -
Lua程序设计第二版(笔记) 第二章类型与值
Lua是一种动态类型的语言。Lua中有8种基础类型:nil(空) boolean(布尔) number(数字) string(字符串) userdata(自定义数据) function(函数) thread(线程) table(表) 函数type可根据一个值返回其类型名称。Lua在条件测试中,将数字零和空字符串视为"真"。Lua字符串转义序列: \a 响铃 \b退格 \f提供表原创 2013-09-22 09:53:23 · 540 阅读 · 0 评论 -
Lua程序设计第二版(笔记) 第一章开始
1.语法规定:Lua中的标示符可以是由任意字母、数字和下划线构成的字符串,但不能以数字开头。避免使用已一个下划线开头并跟着一个或多个大写字母,因为Lua通常保留标识符"_"作为“哑变量”使用。Lua 保留字:and break do else elseif end false for function if in local nil not or repeat return t原创 2013-09-18 10:46:24 · 669 阅读 · 0 评论 -
Lua程序设计第二版(笔记) 第八章编译、执行与错误
Lua是一种解释型的语言,但Lua确实允许在运行代码之前,先将代码预编译为一种中间形式。区别解释型语言的主要特质是:不在于是否编译它们,而是在于编译器是否是语言运行库的一部分,即是否有能力执行动态生成的代码。dofile是一种内存的操作,用于运行Lua代码块。实际上dofile是一个辅助函数,loadfild才做了真正核心的工作。类似dofile,loadfile会从一个文件加载Lua代码原创 2013-09-29 09:40:32 · 730 阅读 · 0 评论