Как освободить выделенный объект, который должен быть возвращен из метода - PullRequest
1 голос
/ 22 февраля 2012
-(NSArray*)getSomeStuff {
    NSMutableArray *array = [[NSMutableArray alloc]init];
    // Add some objects to array
    return array;
}

Я выделил этот массив, поэтому мне нужно его освободить в какой-то момент. Тем не менее, как мне выпустить его, если он мне нужен, пока я его не верну?

1 Ответ

5 голосов
/ 22 февраля 2012

Использование autorelease:

return [array autorelease];

Он будет выпущен позже, но абонент может retain принять его в собственность.

Кроме того, вы можете использовать array метод класса:

-(NSArray*)getSomeStuff {
    NSMutableArray *array = [NSMutableArray array];
    //...
    return array;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...