viewDidLoad に NSArray を割り当てています (最初に、それを実行しても問題ありませんか?) しかし、どこで解放すればよいでしょうか? ViewDidUnload、dealloc または didRecieveMemoryWarning で?
(また、解放するようにメッセージを送信するか、nil に設定するか、配列または組み合わせを空にする必要がありますか?)
viewDidLoad に NSArray を割り当てています (最初に、それを実行しても問題ありませんか?) しかし、どこで解放すればよいでしょうか? ViewDidUnload、dealloc または didRecieveMemoryWarning で?
(また、解放するようにメッセージを送信するか、nil に設定するか、配列または組み合わせを空にする必要がありますか?)
NSArray を の保持プロパティに割り当て、self
viewDidLoad で (自動) 解放する必要があります。その後、 でリリースしdealloc
ます。このセットアップでは、viewDidLoad が呼び出されると、「現在の」NSArray があればそれを解放します。
init
しかし、可能であれば、関数の 1 つに NSArray を割り当てたほうがよいようです。
viewDidLoad で割り当てることができ、割り当てが解除されると、各項目で release が呼び出されます (アイテムを追加するときに保持が呼び出されるため、必要に応じて解放してください)。
不要な場合は、できるだけ早くリリースする必要があります。保持したい場合 (キャッシュであるため)、3 つのケースすべてで解放できますが、複数回解放しないでください。
オブジェクトを解放するには、解放メッセージを送信します。
[myObject release];
dealloc のプロパティを参照してください: リリースしてから nil に設定しますか? または単にリリースして詳細を確認してください。
配列を空にする必要はありません。配列の参照カウントがゼロになると、そのすべてのオブジェクトで [object release] が呼び出されます。