Я все еще не так хорош в методах управления памятью, и подумал, может ли кто-нибудь объяснить это странное поведение для меня. Рассмотрим эти 3 части кода, которые я тестировал:
DofView* dofView = [[DofView alloc] initWithNibName:@"DofView" bundle:nil];
NSLog(@"dof retain count = %d", [dofView retainCount]);
Эти журналы: сохранить count = 1. Это нормально.
DofView* dofView = [[DofView alloc] initWithNibName:@"DofView" bundle:nil];
[dofView release];
NSLog(@"dof retain count = %d", [dofView retainCount]);
Эти журналы: сохранить count = 1. Не должно быть 0??
DofView* dofView = [[DofView alloc] initWithNibName:@"DofView" bundle:nil];
[self.navigationController pushViewController:dofView animated:YES];
NSLog(@"dof retian count = %d", [dofView retainCount]);
Этот журнал: сохранить count = 5. У меня нет идеи, почему его пять?
Каким же кто-нибудь пролил свет на это вообще? Я обеспокоен тем, что я ем память каждый раз, когда создаю новое представление.Спасибо!