Что лучше с ARC: инициализаторы alloc или autorelease?

Что лучше (быстрее и эффективнее) - использовать инициализаторы alloc или autorelease . Например: [

- (NSString *)hello:(NSString *)name {
    return [[NSString alloc] initWithFormat:@"Hello, %@", name];
}

ИЛИ

- (NSString *)hello:(NSString *)name {
    return [NSString stringWithFormat:@"Hello, %@", name];
//    return [@"Hello, " stringByAppendingString:name]; // even simpler
}

Я знаю, что в большинстве случаев производительность здесь не имеет значения. Но я все же хотел бы выработать привычку делать это лучше.

Если они делают то же самое, то я предпочитаю второй вариант, потому что он короче для ввода и более читабелен.

В Xcode 4.2, есть ли способ узнать, что компилируется ARC, то есть куда он помещает сохранить , релиз , autorelease и т. Д.? Эта функция была бы очень полезна при переходе на ARC. Я знаю, что вам не следует об этом думать, но это поможет мне найти ответ на подобные вопросы.

41
задан Josh Caswell 17 February 2014 в 21:28
поделиться