摘要:
--lua中字符串索引从前往后是1,2,……,从后往前是-1,-2……。--string库中所有的function都不会直接操作字符串,只返回一个结果。--------------------------------------------------------------------------... 阅读全文
摘要:
整理自:http://www.cnblogs.com/whiteyun/archive/2009/08/10/1543139.html1.table.concat(table, sep, start, end)concat是concatenate(连锁, 连接)的缩写. table.concat()... 阅读全文
摘要:
转自:http://www.cnblogs.com/whiteyun/archive/2009/08/12/1543184.html基本函数库为Lua内置的函数库,不需要额外装载assert (v [,message])功能:相当于C的断言,参数:v:当表达式v为nil或false将触发错误,mes... 阅读全文
摘要:
luamath库(2012-05-18 17:26:28)转载▼标签:游戏分类: Luaatan2、sinh、cosh、tanh这4个应该用不到。函数名描述示例结果pi圆周率math.pi3.1415926535898abs取绝对值math.abs(-2012)2012ceil向上取整math.ce... 阅读全文
摘要:
转老帖子备份转自:http://www.cnblogs.com/whiteyun/archive/2009/08/10/1542913.htmlos.clock ()功能:返回一个程序使用CPU时间的一个近似值例如:local x =os.clock();print(os.clock())local... 阅读全文
摘要:
math库 定义在math中 所有三角函数都使用弧度 指数和对数函数 取整函数 伪随机数math.random 调用时没有参数返回0~1之间的随机实数 调用时仅一个整数参数n,则返回1~n之间的随机整数 调用时如果有两个整数参数m,n,则返回m~n之间的随机整数 m... 阅读全文
摘要:
弱引用table lua使用自动内存管理机制,通过垃圾回收器来回收内存 垃圾回收器只能回收它认为是垃圾的内容,而不能回收用户认为是垃圾的内容 典型的例子栈,栈一般用一个数组和一个表示顶部的索引值表示 如果弹出一个元素,那么仅是把栈顶索引减一, 但这个元素还留在内存在被这栈数组引用着,所以垃圾... 阅读全文
摘要:
面向对象编程 对象的实现 在lua中table就是一种对象 1.有自己的状态 2.有自己的唯一标识self 3.有自己的生命周期 使用table可以自己实现面向对象的几乎所有特性 把函数定义在table中,并使用t.func的形式访问,如同方法调用 Account = {balance=0}... 阅读全文
摘要:
模块与包使用require加载模块 一个规范的模块应该返回一个table作为这个模块所有导出功能的集合 lua里没通过任何强制性语法规则要求创建模块时反回一个table 但最好这么做,因为大多lua的模块都是这么发布的 --require的实现源代码 function require(name)... 阅读全文
摘要:
环境全局变量table lua把所有的全局变量存在一个table里,并把这个table赋值给一个全局变量_G _G也在这个全局变量的table里,它就是一个普通的全局变量 可以用这种方法遍历所有全局变量 for k, v in pairs(_G) do print(k,v) end 可以使用... 阅读全文
摘要:
元表与元方法基本概念 1.lua中每个值都有一个元表 2.table和userdata可以有各自独立的元表 3.其它类型的值共享其类型所属的单一元表 4.lua在创建新table时不会创建元表 5.其它基本类型的加减等操作都有预定义操作,table只能通过元表及元方法 6.getmeta... 阅读全文
摘要:
错误处理 assert(exp) error("error message text") pcall安全调用协同程序 lua没有真正的多线程,都是使用协同程序也实现的多线程 lua是非对称式协同程序(semi-coroutine),它提供两个函数来处理执行权 任一时刻只能有一个协同程序在执行 只能自... 阅读全文
摘要:
(2012-04-12 23:32:35)转载▼函数定义 function mytest(a,b,c) end mytest = function(a,b,c) end local function mytest(a,b,c) end local mytest = function(a... 阅读全文
摘要:
语句 赋值 多重赋值 a, b, c, d = 1, 2, 3, 4 a, b, c = 1, 2 assert(c == nil) 控制结构 if then elseif else end while end repeat until for循环 数字型for for ... 阅读全文
摘要:
表达式 算术操作符 +(加法) -(减法) *(乘法) /(除法) ^(指数) %(取模) -(负号) x%1的结果是x的小数部分,x-x%1是整数部分 关系操作符 = == ~= 的有操作符的运算结果都是true或false nil仅与nil相等 不等于与c不一样,不是!= a={... 阅读全文
摘要:
类型与值 lua是一种动态类型的语言,在语言中没有类型定义的语法,每个值都携带了它自身的类型信息lua中有8种基础类型nil只与自身相等assert(nil==nil),空值booleantrue false nil和false是假,其它都是真,0和""都是true number 浮点... 阅读全文
摘要:
开始 程序块chunk 交互模式里输入的一行代 一个文件里的代码 也就是一连串的语句或命令 连续的lua语句之间不需要分隔符,但也可以使用分号,如果你愿意的话 在交互模式中输入的每条命令都会立即执行 使用-i可以在运行代码块后进入交互模式 使用dofile可以加载代码文件进行调试 词法... 阅读全文
摘要:
关于Lua 1993年由巴西里约热内卢天主教大学计算机系Roberto Ierusalimschy(莱鲁萨利姆斯奇)等人编写 一开始就没有准备去实现C语言已经实现的非常出色的方面 与C语言之间实现非常好的交互能力,一门胶水语言 非常适合C程序号学习,互补性非常强 自动内存管理机制(垃圾回收器),优秀... 阅读全文