wu

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
学习Tips: http://blog.codingnow.com/cloud/LuaTips
Lua提供的机制是C所不擅长的,比如:高级语言、动态结构、简洁、易于测试和
调试等。正因为如此,Lua 具有良好的安全保证,自动内存管理,简便的字符串处理功
能及其他动态数据的改变。
通常情况下,组件(或对象)表现为具体在程序开发过程中很少变化的、占用大量 CPU
时间的决定性的程序,例如窗口部件和数据结构。对那种在产品的生命周期内变化比较
多的应用方向使用Lua 可以更方便的适应变化。
Chunk是Lua执行的每一块语句。
注释:-- 多行注释: --[[ --]]
Numbers表示实数,Lua中没有整数。lua可以用处理任何长整数而不用担心误差。
lua中字符串是不可以修改的。
如果两个值类型不同,lua认为他们不等;当且仅当他们表示同一个对象时二者相等。
逻辑运算符认为false 和nil是假(false ),其他为真,0 也是true. and 和or 的运算结果不是 true 和false ,而是和它的两个操作数相关。一个很实用的技巧:如果x 为false 或者nil则给x 赋初始值v(x = x or v)
C语言中的a ? b : c在lua中等价于: (a and b) or c
字符串连接:两个点 ..
表的第一个元素索引为1(可以从0开始,不建议这样用)
local 创建局部变量,尽量使用:1,可以避免命名冲突; 2. 访问局部变量速度快
for循环中的循环区间写错时,是不会执行的
lua语法要求 break和return 只能出现在 block的结尾一句(也就是说:作为 chunk的最后一句,或者在end 之前,或者 else 前,或者 until 前)。调试时可以显式调用do return end来实现。
Lua 中的函数是带有词法定界(lexical scoping)的第一类值(first-class values ).(第六章,多理解理解……)函数当做变量来看。词法定界:理解为嵌套函数可以访问外部函数的局部变量。第一类值指:在 Lua 中函数和其他值(数值、字符串)一样,函数可以被存放在变量中,也可以存放在表中,可以作为函数的参数,还可以作为函数的返回值。 词法定界指:被嵌套的函数可以访问他外部函数中的变量。很微妙的是:当执行完外部函数后,局部变量n的生命本该结束,但因为他已成了内嵌函数的upvalue,所以他仍然能以某种形式继续“存活”下来,





posted on 2012-05-19 14:58  butterflydog  阅读(129)  评论(0编辑  收藏  举报