我得到了類叫CharacterAnimation
由一個虛擬的方法:調用類方法::地圖
CharacterAnimation : public cocos2d::CCObject {
public:
...
virtual void start(float td);
}
和幾個從它類繼承:
CharacterAnimationBlink
CharactedAnimationDropTear
- etc
我要的是:
創建
std::map<std::string, CharacterAnimation*> animationsList;
填寫
animationList
像:animationsList["blink"] = new CharacterAnimationBlink(1,2,3); animationsList["dropTear"] = new CharacterAnimationDropTear(1,2);
通過這個循環的std ::地圖
對於每個
std::map
元素調用this->schedule(schedule_selector(characterAnimationStartMethodPointer), Character::animationPeriod);
應該怎樣放置,而不是currentAnimationStartMethodPointer
?如何從std::map
訪問指向start()
當前對象的方法?
從CCObject.h
typedef void (CCObject::*SEL_SCHEDULE)(float);
...
#define schedule_selector(_SELECTOR) (SEL_SCHEDULE)(&_SELECTOR)
'schedule_selector'是如何定義的? – 2014-10-08 18:03:40
2 Piotr S .:通過schedule_selector定義更新發布 – Alex 2014-10-08 18:06:33