iOS常见内存泄露错误
常见内存错误
1.memory leak
一般情况是,在某个方法的中通过new或者alloc,copy,create出一个新的对象之后,没有在该方法的最下方进行release操作。
1 | -(void)func{ |
2.bad release
在某个方法的对不是通过new或者alloc,copy,create创建的新对象进行了一次release操作。
1 | -(void)func:(NSObject*)obj{ |
3.nil argument
对NSArray或者NSDictionary对象传入一个空指针。在代码中首先创建了一个某类型的空指针,然后在下面的switch或者ifelse中对指针赋值。然后将对象传入一个字典或者数组中。如果没有做default判断,然后将一个nil指针传入array中,造成crash
1 | -(void)func{ |