UIViewControllerでNSMutableArrayを解放してメモリリークが発生し、ViewDidLoadで配列がallocsされて配列に挿入され、オブジェクトが追加されます。ビューが閉じると、dealloc()は各配列オブジェクトを解放し、配列を解放します。NSMutableArrayを解放しようとするとリークが発生する
通常、リークが発生します。
私の基本的な構造:...
...m file:
NSMutableArray* foo;
@implementation ....
viewDidLoad
{
[[foo alloc] init];
...
}
dealloc
{
for i = each foo object:
[foo objectAtIndex: i] release];
[foo release];
}
...
あなたが本当にそれぞれを解放するループのために実行する必要がありますオブジェクトの?配列自体が解放されると、配列内の各項目に 'release'メッセージが送られると思います。 –
実際のコードを追加してください。そのため、配列に追加したオブジェクトを解放する必要はありません。配列はそれらを保持し、割り当てが解除されると解放します。 –
@Deepak yは私にdownvoteをした –