まだ情報が足りない
- Apple
- 開発
iOS SDK と一体化しているせいで Mac 開発者はしばらく触ることのできなかった Xcode 4.2。Objective-C 新機能の Automatic Reference Counting (ARC) が気になっていたのだ。
やっとリリースされたので、自作フレームワークを ARC に対応させるために調査中。
オブジェクトを retain しない辞書として使っていた NSMapTable だけど、Class Reference によると
Important: NSMapTable does not support weak references under Automatic Reference Counting (ARC).
ARC 環境での weak 参照はサポートされないとのこと。NSPointerArray や NSHashTable も同じらしい。これは strong 参照されてしまうという意味なのか、これまでのように、retain はしないけど解放時の自動 nil 化はされないので解放される前に取り除いてねという意味なのか、どちらなのだろう。
C 言語の id 配列を使っていた部分もあり、対策を考えないといけない。
各 Callback を NULL にした NSArray & NSDictionary はどうなんだろう。
Share
リンクも共有もお気軽に。記事を書くモチベーションの向上に役立てます。