有以下函数,显示返回类型与函数类型不匹配,
char* HelloWorld::fun(){
Sprite* pSprite=Sprite::create(“ty.png”);
pSprite->setPosition(Vec2(50,200));
this->addChild(pSprite);
auto pMoveBy=MoveBy::create(1.0,Vec2(100,0));
pSprite->runAction(pMoveBy);
return pSprite;
}
要让它返回pSprite这个指针对象,应该如何修改?
Sprite* HelloWorld::fun(){
Sprite* pSprite=Sprite::create(“ty.png”);
pSprite->setPosition(Vec2(50,200));
this->addChild(pSprite);
auto pMoveBy=MoveBy::create(1.0,Vec2(100,0));
pSprite->runAction(pMoveBy);
return pSprite;
}
修改后,
在HelloWorldScene.h文件重新声明该函数如下:
Sprite* fun();
在HelloWorldScene.cpp文件中修改如下:
bool HelloWorld::init()
{
HelloWorld uu;
_eventDispatcher->addEventListenerWithSceneGraphPriority(touchListener->clone(),uu.fun());
return true
}
Sprite* HelloWorld::fun(){
Sprite* pSprite=Sprite::create(“ty.png”);
pSprite->setPosition(Vec2(50,200));
this->addChild(pSprite);
auto pMoveBy=MoveBy::create(1.0,Vec2(100,0));
pSprite->runAction(pMoveBy);
return pSprite;
}
运行后出现以下错误:
