NSMutableSet responsedsToSelector addObject: возвращает false

У меня проблема с откликами ToSelector с NSMutableSet.

У меня есть такая программа:

NSArray *arguments = [[NSProcessInfo processInfo] arguments];
theClass = [arguments objectAtIndex: 1];
theMethod = [arguments objectAtIndex: 2];
theArgument = [arguments objectAtIndex: 3];

id object = [[NSClassFromString(theClass) init] autorelease];

if([object respondsToSelector:NSSelectorFromString(theMethod)]) {
    NSLog(@"Result: %@",
    [object performSelector:NSSelectorFromString(theMethod) withObject: theArgument]);
} else {
    NSLog(@"Class %@ doesn't respond to %@.",
    theClass, theMethod);
}

Я называю это с помощью ./program NSMutableSet addObject: str, но программа всегда говорит, что NSMutableSet не отвечает на addObject:.

Я не знаю, почему RespondsToSelector всегда говорит, что NSMutableSet не отвечает на addObject. То же самое с ./program NSMutableSet allObjects.

1 ответ

Решение

Вы проверяли что-то совершенно другое...

[NSClassFromString(theClass) init]

должно быть

[[NSClassFromString(theClass) alloc] init]

вместо.

Другие вопросы по тегам