我已經子類CCSprite和我的課,名爲汽車,inits這樣的:Cocos2D iPhone - 對象發送過多次autorelease?
+(Cars *) carWithNumber:(int)number COLOR:(int)color SHAPE:(int)shape {
return [[[Cars alloc] initWithNumber:number COLOR:color SHAPE:shape] autorelease];
}
-(id) initWithNumber:(int)number COLOR:(int)color SHAPE:(int)shape {
self = [self init];
if (self) {
self.texture = [self createTextureWithNumber:number COLOR:color SHAPE:shape];
}
return self;
}
然後我創建了一個汽車使用,例如,像這樣:
Cars *oneCar = [Cars carWithNumber:2 COLOR:3 SHAPE:5];
[self addChild:oneCar];
看起來完美,但如果我分析和Xcode的代碼,它指向該行
return [[[Cars alloc] initWithNumber:number COLOR:color SHAPE:shape] autorelease];
說對象發送-autorelease過很多次 ?????????
我錯過了什麼?謝謝。
該代碼對我來說看起來很好。你能把它減少到一個測試用例並把它放到網上嗎? – Jim 2012-03-07 14:29:59