内存管理基础

7.24
内存管理

1.引用计数

//引用计数相当于每个调用它的都会retain一份
2. 内存的释放

//局部变量alloc的时候用过直接release,全局变量在dealloc方法里release
3.计数为0的时候调用delloc方法
//dealloc 是当当前类ViewController即将消失的时候就会调用这个方法

4.延迟释放方法

//autorelease 自动释放,也可以说延迟释放,把当前对象放到自动释放池,等下次刷新的时候由系统自动清理内存.
    

5.成员变量的赋值和释放
//利用系统的@property方法retain对象(先释放指针指向的对象)然后返回

//retain,copy ,assign

/*
补充:定义成员变量的时候加_  以便于在.m文件中更好的识别
但在@synthesize中出现矛盾,所以@synthesize array = _array;
*/

//三件套:

    NSArray *_array;
//1
@property (nonatomic,retain)  NSArray *array;
//2
@synthesize array = _array;
//3
- (void)dealloc
{
    [_array release];
    [super dealloc];
}

//retain
//- (void)setArray:(NSArray *)array
//{
//    if (_array != array)
//    {
//        [_array release];
//        _array = [array retain];
//    }
//}
//if判断是否为指向同一对象地址


6.XIB中关联的指针必须在- (void)dealloc  中释放一次







你可能感兴趣的:(ios,iPhone开发)