对精灵添加的事件中无法获得精灵对象

auto secondRoot = CSLoader::createNode(“Scene.csb”);

addChild(secondRoot);

//飞机移动控制
auto player = secondRoot->getChildByName("player");

CCLOG("%f", player->getPositionX());
auto _playerMoveListener = EventListenerTouchOneByOne::create();
_playerMoveListener->onTouchBegan = &player](Touch* t, Event* e){
    CCLOG("%f",player->getPositionX());
    return true;
};
_playerMoveListener->onTouchMoved = &player](Touch* t, Event* e){
    
};

其中player在onTouchBegan中就被变为NULL了,求解

play被释放掉了???

如果把【&】改为【=】就能取到,感觉player被释放掉了,但不知道为什么