Cocos2d-x-3.3回调函数详解(给回调函数(函数指针)传参)
发布时间:2020-12-14 21:06:45 所属栏目:百科 来源:网络整理
导读:首先要明确CC_CALLBACK 和CallFunc、CallFuncN三者的区别 CallFunc和CallFuncN都是用来 创建带有回调函数的【动作】 ,即, 把一个带有(不带有)参数的回调函数包装成一个动作。 区别主要在于回调函数是否带有参数。 因为是包装的一个函数,所以必是以回调
首先要明确CC_CALLBACK 和CallFunc、CallFuncN三者的区别
CallFunc和CallFuncN都是用来
创建带有回调函数的【动作】,即,
把一个带有(不带有)参数的回调函数包装成一个动作。区别主要在于回调函数是否带有参数。
因为是包装的一个函数,所以必是以回调函数(函数指针)的形式出现的。
CallFunc不能带有参数,一般使用静态成员函数create创建实例。
CallFuncN可以带有
一个参数,一般使用静态成员函数create创建实例。
------------------------------------
CC_CALLBACK_0
std::bind,具体可以看一下这个,C++11的新特性。
用于创建回调函数的宏
0,1,2,3是指回调原型中,明显声明的参数列表,这个参数列表都是由COCOS提供的。
而且要注意到其中 不事先指定回调函数参数和 事先指定回调函数参数的顺序,注意不事先指定的在前,事先指定的在后
。
标准格式:
CC_CALLBACK_1
(
GameScene
::
doPause
,
this
,用户指定参数1,用户指定参数2,用户指定参数n
);
回调函数原型:
void GameScene::doPause(Ref *pSender,*touch,*event,用户参数1,用户参数2,用户参数n)
//不用对Ref 进行任何操作
/ /其中this,就是指侦听该回调函数的对象的类型
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |