your programing

강력한 속성 속성은 무엇입니까

lovepro 2020. 10. 10. 10:46
반응형

강력한 속성 속성은 무엇입니까


저는 개발자를 위해 Xcode 베타를 사용하고 있으며 미묘한 차이점을 발견하고 있습니다. 그중에는 선언 된 속성에 대한 새로운 속성이 있습니다.

@property(strong)IBOutlet NSArrayController *arrayControl;

내 질문은 : 강한 속성은 무엇을 의미합니까 ?? 이전 버전을 대체합니까, 아니면 완전히 새로운 것입니까? Google과 개발자 문서를 검색했지만 아무것도 찾을 수 없었습니다. 그것이 무엇인지 알 때까지 나는 그것을 사용하는 것을 주저합니다.

미리 감사드립니다


Objective-C ARC (Automated Reference Counting)의retain 일부로 속성을 대체합니다 . 비 ARC 코드에서는 .retain


강력한 참조는 할당 취소를 중지하는 개체에 대한 참조입니다. 즉, 소유자 관계를 생성합니다. 이전에는이 ​​작업을 수행했습니다.

**// Non-ARC Compliant Declaration
@property(retain) NSObject *obj;**

ARC에서 우리는 클래스 인스턴스가 참조 된 객체에 대한 소유권 이해 관계를 갖도록하기 위해 다음을 수행합니다 (즉, 소유자가 될 때까지 할당 해제 될 수 없음).

**// ARC Compliant Declaration
@property(strong) NSObject *obj;**

아시다시피 iOS 5의 ARC 기반 프로젝트에서는 어떤 개체도 해제 할 수 없습니다. 따라서 나중에 사용할 개체를 유지하고 ARC가 메모리에서 개체를 제거하지 않도록하려면 다음을 설정합니다. 개체의 속성을 "강함"으로 지정합니다.

참고 URL : https://stackoverflow.com/questions/6701023/what-is-the-strong-property-attribute

반응형