1、只要调用了alloc,必须有release或者autorelease,对象不是通过alloc产生的,就无需release
2、set方法中的内存管理
- (void)setCar:(Car *)car
{
if(car!=_car)
{
[_car release];
_car = [car retain];
}
}3、dealloc方法的代码规范
1)一定要[super dealloc],而且放在最后面
2)对self当前所拥有的其他对象做一次release
4、setter内存管理的相关参数
retain:release旧值,reain新值,适用于OC对象
assign:直接复制,非OC对象
copy:release旧值,copy新值
本文介绍了Objective-C中的内存管理原则,包括alloc与release的使用规则、set方法中的内存管理实现方式、dealloc方法的代码规范,以及setter方法中不同内存管理参数(retain, assign, copy)的应用场景。
1174

被折叠的 条评论
为什么被折叠?



