Полагаю, вы могли бы использовать Interfacebuilder для написания вашего Window-класса, а в методе dealloc вы можете установить VARIABLE на nil. Но вы не можете установить сам объект на ноль. переменная сохраняет указатель на объект, если освобожденный указатель указывает на место в памяти, где может быть что угодно.
Так что, если вы обращаетесь к указанному объекту из другого класса, у вас есть другая переменная, поэтому установка значения в вашем классе Windows на nil не будет полезна вообще.
Решение очень простое, так как оконный класс отправляет этому объекту сообщение о выпуске, когда окно освобождается, вы должны сохранить свой объект перед тем, как использовать его в другом классе, а затем освободить его, когда вы закончите с ним.
Если вы используете свойство для своего объекта с атрибутом retain, не забудьте вызвать метод установки с self .object = ... без свойства, оно может выглядеть так:
так что вам нужно сохранить объект перед закрытием окна. может быть, в первом методе viewDidLoad, который вызывается вашим приложением:
<code>
...
- (void)viewDidLoad {
otherClassObject.YOUROBJECT = [self.YOUROBJECT <strong>retain</strong>];</p>
<p>