[已解决]关于遍历CCArray的问题

我的cocos2d-x 版本: 2.2.3
因为一些原因要遍历CCArray,m_pAllNpc就是我要遍历的CCArray,里边装的是各种npc,我要让这些npc执行动作,我是这样写的:

CCObject pn;
//遍历怪物
CCARRAY_FOREACH(this->m_pAllNpc,pn)
{
NpcSprite
pNpc=(NpcSprite*)pn;
pNpc ->gotoAnim();//执行动作函数
}


m_pAllNpc是一个CCArray,里边包含很多种npc的类对象,都是NpcSprite的子类的对象,比如NpcSprite0、NpcSprite1 、BossSprite0、BossSprite1等等,(NpcSprite是CCNode的子类)
但是我这样写的话,这些子类对象不会执行他们自己的动作函数,他们会执行其父类NpcSprite的动作函数。
我想问,如果我想做到执行这些子类自己的动作函数,应该怎么写?

你可以重载一下函数啊,将父类的那个函数设为virtual虚函数啊。

楼上正解:867::867::867::867:

试了下已经OK了,非常感谢!

没事,呵呵。 :2: