OC11_自动释放池
2015-06-18 20:46
232 查看
// // 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 = 12; NSLog(@"retainCount = %li", xiaoHei.retainCount); [xiaoHei autorelease];//将xiaoHei 的拥有权交给了自动释放池 //[array addobject: xiaoHei];//2 //[xiaoHei release];//1 NSLog(@"retainCount = %li", xiaoHei.retainCount);//正确 Dog *xiaoBai = [[Dog alloc] init]; [xiaoBai autorelease]; } //可以有多个释放池 @autoreleasepool { } return 0; }
相关文章推荐
- 吸费电话致富 加值电话合作 声讯电话平台
- Bean对象封装,数据分离
- win8下uboot启动卡制作
- 分布式版本管理git学习资料整理推荐
- 第15周上机实践项目1——用二进制文件处理学生成绩
- UVA 156 Ananagrams
- 黑马程序员——集合框架
- startActivityForResult和setResult详解
- 创世纪
- 自学Lua(1)--Lua语法特点
- 关于nginx配置的不完全总结
- OC10_数组的内存管理
- Redis命令学习-Set(集合)
- 在Ubuntu系统中搭建本地openstack(icehouse)源
- 深入理解学习Git工作流
- 夕甲甲——孔乙己之C++版
- OC9_字符串的内存管理
- Java-马士兵设计模式学习笔记-工厂模式-模拟Spring读取Properties文件
- Java知多少(96)绘图之设置字型和颜色
- 黑马程序员--extern与函数分析