无法获取继承类的实例

时间:2012-07-03 19:08:05

标签: objective-c inheritance casting

我正在使用Cocos2D,我创建了一个非常简单的类,它继承自CCSprite。我有以下类方法:

+(id)carWithFile:(NSString *)fileName{
Car *car= (Car*)[CCSprite spriteWithFile:fileName];
car.anchorPoint=ccp(0,0);
    NSLog(@"%@",[car class]);//Here I get CCSprite in the console
return car;
}

但令我惊讶的是,当我调用此方法时,我仍然得到一个CCSprite实例。即使我检查方法本身,新创建的对象的类也是CCSprite而不是Car。我错过了什么?

1 个答案:

答案 0 :(得分:2)

如果它是汽车的子类,您可以使用

[Car spriteWithFile:fileName];