0
我只是現在試圖使用CCSprite在舞臺上顯示精靈。關於拋出'std :: length_error'實例後調用
字符類是一個成功的CCSprite類。
我寫的代碼如下:
bool HellowWorld::init()
方法:
bool HelloWorld::init()
{
int Indexes[9] = {5,11,15,16,17,19,20,21,25};
int x;
int y;
CCArray *filename = new CCArray();
filename->addObject(new CCString("1-1.png"));
filename->addObject(new CCString("2-1.png"));
filename->addObject(new CCString("1-2.png"));
filename->addObject(new CCString("2-3.png"));
filename->addObject(new CCString("2-3.png"));
filename->addObject(new CCString("1-2.png"));
filename->addObject(new CCString("2-3.png"));
filename->addObject(new CCString("1-1.png"));
filename->addObject(new CCString("1-1.png"));
for(int i=0;i<9;i++){
const char *MyImage = ((CCString*)filename->objectAtIndex(i))->getCString();
characters *chara = (characters*)CCSprite::create(MyImage);
x = Indexes[i]%HORIZONTAL_AXIS;
y = Indexes[i]/HORIZONTAL_AXIS;
CCPoint point = ccp(MARGIN_WIDTH + PIPE_WIDTH * x,MARGIN_HEIGHT + PIPE_HEIGHT * y);
chara->setPosition(point);
this->addChild(chara,1);
}
不過,我收到以下錯誤消息:
libc++abi.dylib: terminating with uncaught exception of type std::length_error: basic_string::_S_create
我應該如何解決這個問題?
請不要投。 –
感謝您的評論。 如果我沒有投射,則錯誤如下所示。 「不能初始化一個類型爲'cocos2d :: CCSprite *」的右值類型爲'Characters *'的變量 – user3321541
那是因爲你正在創建一個精靈而不是字符實例 – LearnCocos2D