变量
nil:空,所有类型变量的初始值
number:所有的number都是double
string:使用“..”作为连接符号,一般可以“aaa”或者[[aaa]]或者[==[aaa]==]
bool:0是true,只有false和nil是false,其他都是true
table:可以当做:数组及map,甚至可以利用复制table的方式来模仿一个对象
function:函数变量,所有的函数都可以看做是变量
userdata:用户定义的类型,由宿主语言定义
thread:线程,还没具体看
http://www.cnblogs.com/ly4cn/archive/2006/08/04/467550.html
注释
--:单行
--[[xxxxx]]:多行
关键字
if elseif end for do while 之类的
http://www.cnblogs.com/ly4cn/archive/2006/08/04/467550.html
实现类的方式
使用table的复制来做
使用function的闭包来做
http://wenku.baidu.com/view/13f06894dd88d0d233d46a1e.html
和宿主的数据交互
使用堆栈,主要是各种push,pop
包括调用函数,设置全局变量,获取table
调用宿主语言自定义的函数需要register
调用lua的标准库函数,需要open对应的lib
http://wenku.baidu.com/view/0874a5f7ba0d4a7302763a99.html
常用的库
lua:lua语言本身的库
luajava:lua和java使用的库
tolua++:lua和c++使用的库,cocos2d-x使用的就是这一套,然后又自己做了封装