Каковы ограничения ARC, и как я могу их снять? - PullRequest
3 голосов
/ 29 марта 2012

Я только что загрузил проект XCode, и я получаю все эти ошибки об «Ограничениях ARC». Что это такое и как я могу их удалить?

Ответы [ 2 ]

4 голосов
/ 29 марта 2012

Существует две версии управления памятью в target-c. ARC и ... ну, не "ARC" :-) Вы, вероятно, скачали проект, который уже не использует ARC. Самым простым способом решения вашей проблемы является указание компилятору обращаться с вашими источниками как «не ARC». Объясняется здесь.

И здесь - хороший учебник, который поможет вам начать работу с ARC.

3 голосов
/ 29 марта 2012

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

ARC также не позволяет вызывать метод во время компиляции, прототип которого не объявлен в интерфейсах.

Также введен новый блок @autoreleasepool.поэтому он не позволяет автоматически выполнять старое автоматическое освобождение объекта

Однако он позволил написать метод dealloc, но не позволил вызвать [super dealloc].

В этом блоге вы можете найти гораздо больше информации об ARC

Вы можете преобразовать свой проект в ARC с помощью xcode следующим образом.Перейдите в Edit -> Refactor -> Convert to target c arc.

Однако у него есть проблема совместимости с репозиторием git, поэтому он не конвертируется, когда в проектах есть папки .git.поэтому вам придется сначала удалить его, а затем преобразовать.проверьте ссылку

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...