2011-12-19 2 views

ответ

11

Здесь, в [NSMutableArray array], вам не нужно выпускать array, он будет выпущен автоматически. & если вы будете писать [NSMutableArray alloc] init] вы будете иметь, чтобы освободить array так [[NSMutableArray array] будет эквивалентно [[[NSArray alloc] init] autorelease];

+0

Я редактирую это, ImageList = [[NSMutableArray alloc] init]; как ImageList = [[[[NSMutableArray alloc] init] autorelese]; но это не сработало. Какая должна быть ошибка – susitha

+0

, какую версию xcode & ios вы используете? –

+0

Xcode 4.1 и ios 4.3 – susitha

1

Первые остается в памяти, пока вы не отпустите его, второй длится до конца цикла выполнения итерация.

1

NSMutableArray нет необходимости, чтобы освободить память и [NSMutableArray alloc] init] и должно быть выпустить его.

0

Когда ARC работает, вам нужно освободить объекты из методов, включая init, alloc, new, copy и mutableCopy, например [NSMutableArray alloc] init]. Если нет, объекты будут зарегистрированы в autoreleasepool, например [NSMutableArray array].

Смежные вопросы