关闭

Lua学习笔记(一)

标签: lua脚本语言游戏开发lua基础lua语法
127人阅读 评论(0) 收藏 举报
分类:

这是我的第一篇正式博文,献给Lua。

接触Lua是因为我们的项目要使用Cocos2dx-lua引擎。初探Lua,感觉和C语言有些类似,这是一个脚本语言,功能强大,非常适合做游戏开发。有C语言的基础,学起来难度应该不算大。

Lua语言的语句是不需要分隔符做结尾的,如果都写在一行,最好能添加分号,便于理解。在Lua中,注释使用两个横线“–”,注释块使用“–[[”为头,“]]”为尾。

注释的技巧:结尾使用“–]]”,这样启用这块代码,只需在开头加横线即可。举例:

--[[
a=1
b=2
--]]

这块代码将两个变量都注释了,如果需要启用它们,只需改成:

---[[
a=1
b=2
--]]

这样首尾两行均被注释,代码可以使用了,下次想再次注释就删掉一个横线,不必做无用功。

Lua标识符可以是数字,字母和下划线,但是不能以数字开头。Lua有一个和null类似的东西,叫做nil,所有未初始化的变量,print出来就是nil,表示“空”。若要删除全局变量,只需赋值nil即可。

关于类型,Lua中使用了一个非常强大的东西——table,它是Lua的灵魂所在。学好table是很重要的。table是一种对象,可以动态添加内容,没有固定大小,通过构造表达式来创建,比如“{}”:tbl={},则tbl为lua的table。如果table中的变量没有初始化,则打印出来的就是nil。table报矿两个部分组成:key和value,可以key=value的形式不断添加成员。存储和读取的时候有多种方法,我们来看例子:

tbl = {}
tbl["x"] = 1
tbl.y = 5
tbl[6] = z

--现在,我们的tbl构成为:tbl={x=1,y=5,6=z},索引key在等号左边,值value在等号右边

print(tbl.x, tbl["y"], tbl[6])

--输出1  5  z

应该注意的是,和C不同,Lua用table表示的数组通常以1为起始索引,table操作:table.maxn(tbl)可以返回tbl的最大正索引数。

此外,Lua的函数部分也是重点,function在lua中也是极为灵活的。这一块在后续笔记中详细总结。下一次,我们将继续讨论Lua的语法部分,学习操作符和语句。

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:20237次
    • 积分:417
    • 等级:
    • 排名:千里之外
    • 原创:22篇
    • 转载:0篇
    • 译文:0篇
    • 评论:4条
    最新评论