ARC включен, но я все еще могу использовать релиз и авто-релиз в моем AppDelegate?

Я включил ARC в своем приложении для iOS, что, по-моему, означало, что вы не смогли явно вызвать retain, release или же autorelease без настройки -fno-objc-arc флаг. Видимо, это не так для делегата приложения. Я проверил мой файл AppDelegate в разделе "Исходники компиляции" "Фазы сборки" для моего проекта, и в нем не указаны флаги компилятора, установленные для меня в файле AppDelegate. Тем не менее, я могу явно позвонить release а также autorelease, но нет retain, Является ли это свидетельством колдовства, или инженеры Apple прибегли к взлому, чтобы заставить ARC работать?

1 ответ

Если вы можете отправить эти сообщения, ARC выключен.

Вы можете проверить, используя

#if ! __has_feature(objc_arc)
#error "ARC is off"
#endif
Другие вопросы по тегам