Creating an object, strange question
我有一个类"抛射体",我想用它创建一个对象。为了最小化代码,我想从一个字符串中指定对象,它将清除很多东西。
例子:我有绳子,
1 | tempenemy.atktype = @"homing_fireball"; |
现在我想从抛射体类创建一个同名的对象:
1 | Projectiles *tempenemy.atktype; |
这有可能吗?所以最终的结果将是一个来自抛射类的物体,叫做"归航火球"。
谢谢!!
我怀疑这是可能的。但我不是Objective-C的核心专家。
我建议你把你的子弹储存在一本不可更改的字典里。你可以用@"归巢火球"的键来储存物体。然后你可以用
1 | Projectile *someProjectile = [myProjectiles objectForKey:tempenemy.atktype]; |
如果我明白你的意思,你想初始化一个以atktype为成员的抛射体对象?你打电话进来……
1 | Projectiles* tempProjectiles = [[Projectiles alloc]initWithType:@"homing_fireball"]; |
你的炮弹。
1 2 3 4 5 6 | // blah blah blah { NSString* atktype; } @property (nonatomic, retain)NSString* atktype; -(id)initWithType:(NSString*)type; |
你的炮弹。
1 2 3 4 5 6 7 8 9 10 | @synthesize atktype; -(id)initWithType:(NSString*)type { self = [super init]; if(self) { atktype = type; } return self; } |