What does the “strong” keyword do

旧街凉风 提交于 2019-11-28 02:36:47

问题


I downloaded the Xcode 4.2 developer preview version and I created a cocoa application. But I found a very weird syntax in the delegate class:

@property (strong) IBOutlet NSWindow *window;

What does this mean? And the compiler can't even compile it.

Thanks in advance!


回答1:


It indicates that this property is a strong relationship—an ownership. It's ARC's version of the retain keyword in the same context.

And the compiler can't even compile it.

It's valid ARC code, so if your tools support ARC, they certainly should be able to compile it.

Make sure that you're using Xcode 4.2 or later, and that you have the project's compiler choice set to Clang (“Apple LLVM Compiler”).




回答2:


Strong refers to the automatic reference counting (ARC) that is arriving in the new LLVM compiler, part of Xcode 4.2 when it's released. Presently, Xcode 4.2 preview is still under NDA - post any questions to the developer forums by logging in to your developer account.

See this good weblog post.



来源:https://stackoverflow.com/questions/6613186/what-does-the-strong-keyword-do

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!