Objective-C에서 일부 Collection을 제외하고 대부분의 Collection이 객체를 strong reference한다.

하지만 특수한 경우에 weak reference하고 있는 Collection들이 필요하기 때문에 몇개의 weak reference를 할 수 있는 collection들이 존재한다. 해당 Collection들은 당연히 Mutable이다.

1. NSPointerArray

- 대응 Collection : NSArray, NSMutableArray

2. NSHashTable

- 대응 Collection : NSSet, NSMutableSet

3. NSMapTable

- 대응 Collection : NSDictionary, NSMutableDictionary


* 이들 Collectinon들은 강한 참조와 약한 참조를 선택 지정할 수 있을 뿐 아니라, 복사를 할것인지, 참조하는 대상이 객체인지 C언어의 문자열이나 구조체인지도 지정할 수 있다. 그리고 메모리를 확보하고 해제하는데 사용되는 함수를 지정하는 것도 가능하다.


Posted by 홍성곤
,