UI设计中的过度释放

来源:互联网 发布:淘宝考试规则 编辑:程序博客网 时间:2024/05/01 06:41

        昨天在做相册的时候遇到了一个问题, 系统没有报错, 但在运行后总是Crash, 来回找错好几次也没有发现错误, 后来才发现是内存管理出了问题.

        在ViewController中, 我声明了一个 UIPageControl *page 的属性, 但是在实现的时候, 一时粗心大意我将

self.page = [[UIPageControlalloc]initWithFrame:CGRectMake(0,560,375,40)];  写成了

_page = [[UIPageControlalloc]initWithFrame:CGRectMake(0,560,375,40)]; 

在开始找错的时候也一直没注意到这个问题,  这样会出现  UIPageControl *page  这个属性没有使用 setter 方法, 使自身的引用计数+1, 但是在 dealloc 的时候引用计数却又-1,  造成了过度释放, 导致程序运行时crash. 这样不经意的一个小问题往往也使最容易疏忽的.

0 0
原创粉丝点击