В цели-c я понимаю, что необходимо выпустить что-либо Вы init/retain/copy. Сделайте я должен сделать это прежде a return
оператор? Я желаю понять вызов release
явно и не использование autorelease
.
-(void) someMethod
{
AnotherClass* ac = [[AnotherClass alloc] init];
if([ac somethingHappens]){
// Do I need to release ac here?
return;
}
[ac doSomethingElse];
[ac release];
}
Спасибо!
Комментарии XML с тремя косыми чертами можно использовать для создания подсказок IDE в Visual Studio. В частности, очень хорошо работают «резюме» и «исключение». (Другие вещи, такие как «код», не работали в версиях Visual Studio, которые я использовал.)
Если это не работает для вас, то может быть что-то не так с вашими настройками.
-121--3977883-Необходимо использовать свой первый синтаксис, и если вы используете класс вне решения Visual Studio, необходимо проверить Создание файла XML-документации в свойствах проекта.
-121--3977885-Да, необходимо освободить переменные, но выйти из метода.
Это довольно прямо вперед: когда вы инициализируете что-то, количество удержаний увеличивается. Когда вы освобождаете, он уменьшается. Когда он достигает нуля, он автоматически освобождается (освобождается).
В приведенном выше коде вы вводите переменную, но если она следует по обратному маршруту, то количество сохраняемых переменных никогда не достигает нуля и, следовательно, никогда не освобождается.