//
// Dog.h
// OC11_自动释放池
//
// Created by zhangxueming on 15/6/18.
// Copyright (c) 2015年 zhangxueming. All rights reserved.
// #import <Foundation/Foundation.h> @interface Dog : NSObject @property (assign, nonatomic)NSInteger age; @end //
// Dog.m
// OC11_自动释放池
//
// Created by zhangxueming on 15/6/18.
// Copyright (c) 2015年 zhangxueming. All rights reserved.
// #import "Dog.h" @implementation Dog - (void)dealloc
{
NSLog(@"dog is release");
[super dealloc];
} @end
//
// main.m
// OC11_自动释放池
//
// Created by zhangxueming on 15/6/18.
// Copyright (c) 2015年 zhangxueming. All rights reserved.
// #import <Foundation/Foundation.h>
#import "Dog.h" int main(int argc, const char * argv[]) {
@autoreleasepool {
//自动释放是就是一个数组,自动释放池会将池中所有的对象都release一次
Dog *xiaoHei = [[Dog alloc] init];
xiaoHei.age = ;
NSLog(@"retainCount = %li", xiaoHei.retainCount); [xiaoHei autorelease];//将xiaoHei 的拥有权交给了自动释放池
//[array addobject: xiaoHei];//2
//[xiaoHei release];// NSLog(@"retainCount = %li", xiaoHei.retainCount);//正确 Dog *xiaoBai = [[Dog alloc] init];
[xiaoBai autorelease]; } //可以有多个释放池
@autoreleasepool { } return ;
}
05-06 21:20