Что делает ключевое слово "сильное"?
Я загрузил версию предварительного просмотра разработчика Xcode 4.2, и я создал приложение cocoa. Но в классе делегатов я нашел очень странный синтаксис:
@property (strong) IBOutlet NSWindow *window;
Что это значит? И компилятор даже не может его скомпилировать.
Спасибо заранее!
Ответы
Ответ 1
Это указывает на то, что это свойство является сильным отношением - собственностью. Это ARC версия ключевого слова retain
в том же контексте.
И компилятор даже не может его скомпилировать.
Это действительный код ARC, поэтому, если ваши инструменты поддерживают ARC, они, безусловно, должны быть в состоянии скомпилировать его.
Убедитесь, что вы используете Xcode 4.2 или новее, и что у вас есть выбор компилятора проекта, установленный Clang ( "Компилятор Apple LLVM" ).
Ответ 2
Сильный означает автоматический подсчет ссылок (ARC), который прибывает в новый компилятор LLVM, часть Xcode 4.2, когда он был выпущен. В настоящее время предварительный просмотр Xcode 4.2 по-прежнему находится под управлением NDA - размещайте любые вопросы на форумах разработчиков, войдя в свою учетную запись разработчика.
Смотрите это хорошее сообщение weblog.