Objective Cのコンテナがデアロクされると、オブジェクトの参照を解放しますか、手動で行う必要がありますか?deallocのNSArray(および他のコンテナ)の動作
2
A
答えて
5
は近いNSArrayのためのドキュメントを読んでいる必要があります。
配列は、その内容-でマネージメモリ環境への強い参照を保持し、そのidは、アレイとのリリースに追加される前に、各オブジェクトが保持してメッセージを受信します配列から削除されたとき、または配列の割り当てが解除されたときのメッセージ。異なるオブジェクト所有権セマンティクスを持つコレクションが必要な場合は、代わりにCFArray Reference、NSPointerArray、またはNSHashTableの使用を検討してください。
0
これらのオブジェクトは、オブジェクトに含まれるオブジェクトへの参照を解放します。
0
オブジェクトを追加すると、オブジェクトの参照カウントが増分されます。それが削除されると(手動で消滅するか、または配列が破壊されたときに)、その参照カウントが減分されます。
したがって、次のコードで、あなたが
NSObject* someObject = [[[SomeClass alloc] init] autorelease];
[someArray addObject: someObject];
0
When an array is deallocated, each element is sent a release message.
オブジェクトを解放する必要はありません関連する問題
- 1. NSArrayにはUIImages(およびその他)のNSArrayを含むNSArrayを保存します
- 2. clangのstd :: vector(および他のコンテナ)の境界チェック?
- 3. リリース、Dealloc、および自己参照
- 4. Updateおよび他の活動が
- 5. TableView.delegateおよび他のVC
- 6. Python、R、およびMongoDBのDockerコンテナのイメージの作成方法
- 7. C++のコンテナ、共分散およびテンプレート
- 8. PODS、コンテナおよびノード間のネットワーク
- 9. extension.onConnect、extension.connectおよびPortの動作
- 10. カスタムUITableViewCellの、自動解放およびその他の方法
- 11. JLabel(およびその他のコンポーネント)でHTMLが動作しなくなった
- 12. 別のNSArrayのおかげでNSArrayソーティング
- 13. LUISインテントおよびマッチインテントおよびプロアクティブダイアログで動作するボットフレーム
- 14. コピーSTARTDATEおよびENDDATE他のライン
- 15. SQLおよびMySQLの自動バックアップおよび.NETホスティング
- 16. ドッカーaufsからdevicemapperドッカーのコンテナおよびイメージへの移行
- 17. のFlex 3、4および4.5のコンポーネントとコンテナ
- 18. ブートストラップのコンテナ、行、および列の使用
- 19. D3ドラッグイベントの動作:DragEvent.xおよびDragEvent.yの値のソース
- 20. PyCharm - matplotlib(およびその他のインポートされたモジュール)の自動補完
- 21. Cakephpコンテナの動作における複数テーブルの検索
- 22. IntおよびIntでのFirstOrDefaultの動作
- 23. varcharカラムのMin()およびMax()の不一致動作
- 24. Reduxの:整理コンテナ、コンポーネント、アクション、および減速
- 25. サービスロケータ、依存性注入(およびコンテナ)とコントロールの反転
- 26. Azureコンテナサービスのコンテナおよび関連する問題
- 27. Dockerコンテナ内のVSCodeおよびクリック可能なパス
- 28. Deviceプラグイン(および他のもの)をcordova 3.0に手動でインストールします。
- 29. CSSコンテナの動作
- 30. ノードjsのエンティティクラスの等価およびその他のメソッド