Это правильно?
- (void)dealloc { [super dealloc]; [stageObjects release]; }
Или мне следует позвонить
[super dealloc]
Всегда после всех выпусков, я имею в виду последнюю строку этой функции?
Вы всегда должны звонить [super dealloc]; последним. В конце концов, этот самый объект всегда может быть освобожден после возврата вызова super.
[super dealloc];
должна быть последней строкой для вызова метода dealloc.
Вы также можете сделать макрос, как показано ниже для объектов dealloc, и из-за этого вам не нужно каждый раз писать метод.
RELEASE_SAFELY (объект) [освобождение объекта], объект = ноль