码迷,mamicode.com
首页 > 其他好文 > 详细

lua学习笔记(1)

时间:2015-08-08 20:01:04      阅读:256      评论:0      收藏:0      [点我收藏+]

标签:lua cocos2dx

首先,lua是根据标准C改写而成,在本文中使用的编译器是sublime。编译环境是sublime+quick-cocos2dx3.3

1.全局变量和局部变量

在lua中,局部变量使用关键字 local,并且没有local关键字的变量都是全局变量,无论他在程序的那个位置。

例如:定义一个函数

<span style="font-size:24px;">function funa( )
	a=9--全局变量
end</span>
然后在构造函数中调用这个函数,并且输出a:

<span style="font-size:24px;">	funa()
	print(a)</span>

最后的输出的结果:9,。在这里我们就定义了一个全局变量a,我们是在funa中定义的这个变量,然而在构造函数:function luastudy:ctor()中调用funa然后输出,得到输出结果。

如果将a改为局部变量,则:

<span style="font-size:24px;">function funa( )
	local a=9--
end</span>
然后再和上面的形式输出,则输出结果是:nil。这个就是lua中的空。

2.数据类型

lua中的数据类型有:number,string,function,Boolean。

判断一个数据的类型使用tyoe函数,例如:a=9,print(type(a))

链接两个字符串使用:..  例如

a,b=3,4//lua中可以这样给多个值赋值,他会自动判断每一个数据的类型

print(a..b)

输出:

34

3.运算符

3.1运算符的优先级:(由高到低)

^




not - (unary)



* /



+ -



..




< > <= >= ~= ==
and




or

其中:not是非,~=是不等于

3.2 在lua中++,--这些是没有的,a++这个在lua中只能写成a=a+1。

4.函数

在lua中这样声明一个函数:

function function_name( ... )
-- body
end
4.1声明一个无参数的函数:

function funa(  )
-- body
end

4.2声明一个有参数的:

function funb( a,b)
-- body
end

4.3声明一个不确定参数的

function func( ... )
-- body

a,b,c=...

print(a,b,c)
end

然后我们调用这个函数:

func(1,2,3).这样我们在函数func中将1,2,3分别赋值给了a,b,c。然后输出。

4.4声明一个有返回值的函数

function fund(  )
-- body

return a

end

//多个返回值

function fune(  )

return 1,2,3
end

local a,b,c=fune().在这里我们将1,2,3赋值给a,b,c。

5.分支语句

5.1在lua中的if语句:

if conditions then
--todo
end

5.2 if-else语句:

if conditions then
--todo
else
--todo
end

5.3if-else-if:

if conditions then
--todo
elseif conditions then
--todo
end

注意在中间的语句中elseif中间没有空格.还有就是在lua中没有switch语句.

6.循环语句:

a,b=1,9

6.1while语句:

while a<b do
--todo
print("while:",a)
a=a+1
end

6.2repeat语句相当于do-while语句

repeat
print("repaet:",a)
a=a+1
until a>b

6.3for语句

for i=1,10 do
print(i)
end

这里默认的步长是1,如果不要默认值,则:

for i=1,10,2 do
print(i)
end

这样步长就变成了2.

6.4

在lua中没有continue,只有break。

但是如何实现和continue一样的效果?

for i=1,10 do
repeat
if i==5 then
--todo
break
end
print("i=",i)
until true

end

输出结果:

技术分享

版权声明:本文为博主原创文章,未经博主允许不得转载。

lua学习笔记(1)

标签:lua cocos2dx

原文地址:http://blog.csdn.net/jin_syuct/article/details/47360231

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!