Cocos2d-x学习进阶5:函数190429

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

一、返回多重数值

  1. 如下
--------------------------------
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。如下图

string.find
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))

二、定义函数

  1. 定义对象的方法
class={}  -- 一个对象
function class.func1()
end
function class:func2()
end

在 Lua 中使用“:”定义的函数会自动传入一个名为 self 的变量,self 同 C++ 中的 this 一样,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

尖枫508

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值