Cocos2d-x 之Lua初学

来源:互联网 发布:矩阵a的n次方的行列式 编辑:程序博客网 时间:2024/05/25 01:35

Lua简介:lua是一个动态脚本语言,游戏开发中经常使用,我感觉它的特点就是灵活、简洁。就目前对我们的项目而言,它最大的特色就是游戏更新可设计成一种资源形式的更新方式。

由于我的目的是达到lua中使用cocos2d-x的api 来实现游戏编程,所以我只是大体了解了下单向的调用过程,对于逆向调用过程并没有深入了解。使用lua的前提下,先简单介绍一下学习 lua 需要注意的一些东西。

主要分为: lua的数据类型、lua的栈、lua的内存。最近也在网上狂搜了一些lua的资源,我发现以后三方面的知识算是lua比较核心的一些东西。

 

Lua栈(抄自己CSDN一个技术牛人的博客,本人语言组织能力较差)

         Lua中的数据类型:Nil、Booleans、Numbers、Strings、Functions、UserData。

         Nil它只有一个值:nil, 一个未初始化的全局变量默认是nil, 而且可以通过将全局变量设置为nil来把它删除。

         Booleans两个取值true和false,大家应该比较了解,但要注意 Lua中所有的值都可以作为条件,你只要记住在控制结构的条件中除了flase和nil为否外,其它任何值都为真,包换0和空串,这样你就不会混淆了。

         Numbers表示实数,Lua没有整数。它表数示Lua中的数字。

         Strings:字符串没有什么好说, 这里只提一下Lua有关字符串的运算吧,字符串与数字的”+”运算,字符串会自动转换成数字类型。如果想将一个数字与字符串连接,使用 .. 两点运算符。

         Functions:Lua中函数是一类值(和其他变量相同),意味着函数可以存储在变量中,可以作为函数的参数,也可以作为函数的返回值。

Lua与别的语言交互以及交换数据,是通过栈完成的。其实简单的解释一下,你可以把栈想象成一个箱子,你要给他数据,就要按顺序一个个的把数据放进去,当然,Lua执行完毕,可能会有结果返回给你,那么Lua还会利用你的箱子,一个个的继续放下去。而你取出返回数据呢,要从箱子顶上取出,如果你想要获得你的输入参数呢?那也很简单,按照顶上返回数据的个数,再按顺序一个个的取出,就行了。不过这里提醒大家,关于栈的位置,永远是相对的,比如-1代表的是当前栈顶,-2代表的是当前栈顶下一个数据的位置。栈是数据交换的地方,一定要有一些栈的概念。当你初始化一个栈的时候,它的栈底是1,而栈顶相对位置是-1,说形象一些,你可以把栈想象成一个环,有一个指针标记当前位置,如果-1,就是当前栈顶,如果是-2就是当前栈顶前面一个参数的位置。以此类推。当然,你也可以正序去取,这里要注意,对于Lua的很多API,下标是从1开始的。这个和C++有些不同。而且,在栈的下标中,正数表示绝对栈底的下标,负数表示相对栈顶的相对地址,这个一定要有清晰的概念,否则很容易看晕了。

这里就要再迁出一个更重要的概念了,Lua不是C++,对于C++程序员而言,一个函数会自动创建栈,当函数执行完毕后会自动清理栈,Lua可不会给你这么做,对于Lua而言,它没有函数这个概念,一个栈对应一个lua_State指针,也就是说,你必须手动去清理你不用的栈,否则会造成垃圾数据占据你的内存。关于内存网上大多问题集中在全局变量,因为lua默认变量是全局类型的,所以一定要记得释放。

 

Lua 中调用C++代码详解与示例:自己有些api也不是很理解,包括看了网上的教程也不是很理解,不过可以提供一个网址,大家可以去学习一下。

http://blog.csdn.net/favormm/article/details/5796610


转自:http://blog.sina.com.cn/s/blog_61ece09901012vlk.html


原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 全民k歌有杂音怎么办 录歌换气声很大怎么办 网易云没有的歌怎么办 qq空间给封了怎么办 酒店住最后一间怎么办 妻子起诉离婚丈夫不离怎么办 老婆对我没感情怎么办 老婆要跟我离婚怎么办 眼睛里进了沙子怎么办 耳塞孔进沙子了怎么办 斜挎包链子长了怎么办 爱上大15岁大叔怎么办 老板不给发工资怎么办 4个月婴儿感冒了怎么办 9个月宝宝感冒了怎么办 婆婆去世了我该怎么办 腰疼得睡不着觉怎么办 长期抱孩子腰疼怎么办 抱孩子累的腰疼怎么办 带孩子带的腰疼怎么办 生完孩子后便秘怎么办 生完宝宝下面松怎么办 坐完月子后腰疼怎么办 生完宝宝腰疼怎么办 生完小孩后腰痛怎么办 生完小孩痔疮痛怎么办 生完孩子阴松弛怎么办 生完孩子乳房松弛怎么办 生完宝宝后腰痛怎么办 顺产的过程很疼怎么办 生完孩子想离婚怎么办 刨腹产后胃胀气怎么办 月子里宝宝涨肚怎么办 肠鸣放屁多便秘怎么办 趴着睡觉胃胀气怎么办 备孕三个月了还是没怀上怎么办 月子里喂奶腰疼怎么办 生完孩子子宫疼怎么办 记账凭证写错了怎么办 饥荒精神值为0怎么办 抓不住温暖我能怎么办