一、返回多重数值
- 如下
--------------------------------
function f(a,b)
return a or b ;
end
f(3);-- 返回3,而b=nil;
f(3,4);--返回3,4;
returnf ()语句会把 f ()返回的所有返回值都返回,而 return (f())会迫使它只能返回一个结果。
--------------------------------
print(string.find("字符串","目标字符串"));--寻找目标字符串在字符串中的起始位置排位
eg:
print(string.find("hello lua users","lua"));--返回的是7和9。如下图

2. 函数 unpack ();
unpack();会接收一个数组作为参数,并从下标1开始返回该数组元素。
print unpack 10 20 30 – 102030
a b=unpack 10 20 30 – a=10 b=20 30 被丢弃
unpack 经常用于函数参数传递。
a= {“hello”,“ll”}
string.find (unpack (a))
二、定义函数
- 定义对象的方法
class={} -- 一个对象
function class.func1()
end
function class:func2()
end
在 Lua 中使用“:”定义的函数会自动传入一个名为 self 的变量,self 同 C++ 中的 this 一样,

本文深入探讨了Cocos2d-x中Lua的函数使用,包括返回多重数值、函数定义、可变参数和闭包函数。通过实例展示了如何使用unpack传递参数,定义对象方法,以及如何利用闭包实现计数器功能。
1840

被折叠的 条评论
为什么被折叠?



