关于cocos2dx 3.2 监听的问题

helloWorld.h代码
class…{
Card* cards;
};
helloWorld.cpp代码
createCard(); //这里我把cards初始化了
auto listener = EventListenerTouchOneByOne::create();
listener->onTouchBegan = ](Touch *t, Event *e){return true;};
listener->onTouchEnded = (Touch *t, Event *e){
log("%d",cards); //这里获取不到a 我打断点调试 说读取不了cards的内存
};
Director::getInstance()->getEventDispatcher()->addEventListenerWithSceneGraphPriority(listener, playScene);
//而且还有 我在.h中 int b; .cpp中在监听之外的方法里给b赋值,但是我在onTouchEnded 里调用b的时候,b的值是个随机数,说明b没有被初始化,跟cards那种情况一样,原理我倒是知道,因为 ]里只能捕获函数参数和非static属性的局部变量 (this属于函数的参数之一)其他一律不行,但是我要怎么写样才能在监听中捕获到cards数组中的值??
着急,在线等,谢谢大家了

是log("%d",cards->num);我调试的时候写错了 但是还是那个错误 就是读取不了内存

你这个只有一种情况,就是你的这个对像已经被释放了。