Я пытаюсь создать экземпляр типа на основе другого типа, переданного в метод.Я считаю, что NSClassFromString
прекрасно работает, если используется со строковым литералом, как в
id instance = [[NSClassFromString(@"TheNameOfTheClassIWant") alloc] init];
, но если я строю строку с чем-то вроде
NSString *inClassName = [[protoInstance class] description];
NSString *outClassName = [inClassName stringByAppendingFormat:@"IWant"];
id instance = [[NSClassFromString(outClassName) alloc] init];
, то instance
nil
.NSClassFromString
работает только с литералами?Что-то происходит во время компиляции, чтобы заставить NSClassFromString
работать?