Создание объекта, странный вопрос - PullRequest
0 голосов
/ 23 февраля 2011

У меня есть класс "Снаряды", и я хочу создать с ним объект.Чтобы свести к минимуму код, я хочу указать объект из строки, он будет очищать много.

Пример: у меня есть строка,

tempenemy.atktype = @"homing_fireball";

Теперь я хочу создать объектс тем же именем из класса «Снаряды»:

Projectiles *tempenemy.atktype;

Возможно ли это?Таким образом, конечным результатом будет объект из класса Projectiles под названием homing_fireball ..?

Спасибо !!

Ответы [ 2 ]

1 голос
/ 23 февраля 2011

Я сомневаюсь, что это возможно. Но я не эксперт по внутреннему ядру цели-c.

Я бы посоветовал вам хранить ваш снаряд в NSMutableDictionary. Вы можете сохранить объект с ключом @ "homing_fireball". И тогда вы можете сослаться на что-то вроде

Projectile *someProjectile = [myProjectiles objectForKey:tempenemy.atktype];
0 голосов
/ 23 февраля 2011

Если я понимаю, что вы имеете в виду, вы пытаетесь инициировать объект снаряда с типом atk в качестве члена?Вы звоните в основном ..

Projectiles* tempProjectiles = [[Projectiles alloc]initWithType:@"homing_fireball"];

Ваш projectiles.h

// blah blah blah
{
NSString* atktype;
}
@property (nonatomic, retain)NSString* atktype;
 -(id)initWithType:(NSString*)type;

Ваш projectiles.m

@synthesize atktype;
-(id)initWithType:(NSString*)type
{
      self = [super init];
         if(self)
          {
             atktype = type;
          }
     return self;
}
...