#import <Foundation/Foundation.h>
/*
方法的基本使用
1.retain 计数器 +1 ,会返回对象本身
2.release 计数器 -1,没有返回值
3.retainCount 获取当前的计数器
4.dealloc 当一个对象要被回收的时候,就会调用,
一定要调用[super dealloc],这句调用要放在最后面
概念
僵尸对象:所占用内存已经被回收的对象,僵尸对象不能再试用
野指针:指向僵尸对象(不可用内存)的指针,给野指针发信息会报错
空指针:没有指向任何东西的指针(存储的东西是nil,null,0),给空指针发信息不回报错
*/
@interface Person
@end
@implementation Person
//当一个Person对象被收回的时候,就会自动调用这个方法
- (void)dealloc
{
//super的dealloc一定要调用,而且放在最后面
[super dealloc];
}
@end
int main (int argc, const char *argv[])
{
Person *p = [[Person alloc] init];
MSUTnteger c= [p retainCount];
NSLog(@"计数器:%ld", c);
return 0;
}
objective-c 内存管理1
最新推荐文章于 2024-03-03 18:24:35 发布