OC语言使用引用计数来管理内存,每一个对象都有一个可以递增递减的计数器,如果引用这个对象,那么这个对象的引用计数递增,如果不用了,那么这个对象引用计数递减,直到引用计数为0,这个对象就可以销毁了。
- (NSUInteger)retainCount
- (void)setName:(NSString *)name{
if (_name != name) {
[_name release]; //把_name以前的对象release
_name = [name retain]; //把name对象的地址赋给_name,这时name和_name共同指向同一个对象
}
}
- (void)setName:(NSString *)name{
if (_name != name) {
[_name release];//把_name以前的对象release
_name = [name copy];//把name对象的地址拷贝一份给_name
}
}
-(void)setName:(NSString *)name{
_name = name; //直接赋值
}