@interface Rectangle
@property (retain) UIView *view;
@end
@implementation Rectangle
CGRect frame = CGMakeRect();
self.view = [[UIView alloc] initWithFrame:frame]
Student *student=[[Student alloc]init];
[student release]; // not using this but using dealloc on it see below
- (пустоты) dealloc { [_view релиз]; [super dealloc]; [student dealloc]; } @end
Мой вопрос: здесь, почему мы должны освободить память на супер-объект ???? что произойдет, если мы освободим память от ученика, выпустив его?Должен ли я вручную освобождать свойства, объявленные как сохраняемые?
Спросите себя, почему вы не используете ARC (автоматический подсчет ссылок). – rmaddy
И найдите современный учебник. Нет необходимости в строке '@ synhesize'. – rmaddy
Полунезависимый, но если вы не используете ARC, и вы переопределяете -dealloc, как вы там делаете, вы ДОЛЖНЫ называть [super dealloc] в конце его. В противном случае вы пропустите объект. –