小编ric*_*ich的帖子

使用pushViewController进行内存管理

我对内存管理技术的要求还不是很高,并且想知道是否有人可以向我解释这种奇怪的行为.考虑一下我测试的这3段代码:

DofView* dofView = [[DofView alloc] initWithNibName:@"DofView" bundle:nil];
NSLog(@"dof retain count = %d", [dofView retainCount]); 
Run Code Online (Sandbox Code Playgroud)

此日志:保留计数= 1.这很好.

DofView* dofView = [[DofView alloc] initWithNibName:@"DofView" bundle:nil];
[dofView release];
NSLog(@"dof retain count = %d", [dofView retainCount]); 
Run Code Online (Sandbox Code Playgroud)

这个日志:保留计数= 1.不应该是0 ??

DofView* dofView = [[DofView alloc] initWithNibName:@"DofView" bundle:nil];
[self.navigationController pushViewController:dofView animated:YES];
NSLog(@"dof retian count = %d", [dofView retainCount]);
Run Code Online (Sandbox Code Playgroud)

这个日志:保留计数= 5.我不知道为什么它的五个?

任何人都对此有所了解吗?我担心每次创建新视图时我都会吃掉内存.

谢谢!

iphone memory-management pushviewcontroller ios

14
推荐指数
1
解决办法
1113
查看次数