Что такое differece между:NSMutableArray Alloc INIT против NSMutableArray массива
[[NSMutableArray alloc] init]
и
[NSMutableArray array]
Что такое differece между:NSMutableArray Alloc INIT против NSMutableArray массива
[[NSMutableArray alloc] init]
и
[NSMutableArray array]
Здесь, в [NSMutableArray array]
, вам не нужно выпускать array
, он будет выпущен автоматически. & если вы будете писать [NSMutableArray alloc] init]
вы будете иметь, чтобы освободить array
так [[NSMutableArray array]
будет эквивалентно [[[NSArray alloc] init] autorelease];
Первые остается в памяти, пока вы не отпустите его, второй длится до конца цикла выполнения итерация.
NSMutableArray
нет необходимости, чтобы освободить память и [NSMutableArray alloc] init]
и должно быть выпустить его.
Когда ARC работает, вам нужно освободить объекты из методов, включая init, alloc, new, copy и mutableCopy, например [NSMutableArray alloc] init]. Если нет, объекты будут зарегистрированы в autoreleasepool, например [NSMutableArray array].
Возможный дубликат: [Difference from \ [NSMutableArray array \] vs \ [\ [NSMutableArray alloc \] init \]] (http://stackoverflow.com/questions/5423211/diference-between-nsmutablearray-array-vs -nsmutablearray-alloc-init) – kennytm