黑马程序员技术交流社区

标题: 内存管理 [打印本页]

作者: halloIOS    时间: 2015-1-19 19:56
标题: 内存管理
内存管理总结:
一,计数器的基本操作
1,retain:+1
2,releasse:-1
3,retainCount:获得计数器数
二,set方法的内存管理
1,set方法的实现
- (void) setCar:(Car *) car
{
        if(car != _car)
        {
                [_car release];
                _car=[car retain];
        }
}
2,dealloc 方法的实现
- (void) dealloc
{
        [_car release];
        [super dealloc];
}
三,@property参数
1,OC对象类型
@property (nonatomic,retain) 类名 *属性名
@property (nonatomic,retain) Car *car;
@property (nonatomic,retain) id car;
2,非OC对象类型(int/float/enum/struct)
@property (nonatomic,assign) 类型名称  属性名
@property (nonatomic,assign) int age;
四,autorelease
1.系统自带的方法中,如果不包括alloc,new,copy,那么这些方法返回的对象都已经autorelease过了,不需要release
[NSString  stringWithFormat:@"%d 的小女生",10];
[NSDate date];
2,开发中经常写一些类方法快速创建一个autorelease的对象
*创建时不要直接使用类名,用self
如:Mac中Desktop/class/autorelease
如:一个Person类,一个GoodMan子类

作者: 法布雷加斯    时间: 2015-1-19 23:07
加油加油,一起共勉!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2