程序文件分为头文件(.h)和实现文件(.m);使用#import关键字将所需的头文件导入程序,并且可以避免程序重复引用相同的头文件;@autoreleasepool { … } 自动释放池;符号“@”被广泛使用,体现Objective-C的新特性;使用NSLog执行控制台打印输出内容(例如:NSLo...
分类:
其他好文 时间:
2015-11-24 22:58:35
阅读次数:
175
内存管理主要内容1.内存管理的概念2.引用计数3.如何持有对象所有权4.自动释放池5.@property的使用什么是内存管理内存管理是关于如何管理对象生命周期的编程原则。int main(int argc, char *argv[]){ int value = 1...
分类:
其他好文 时间:
2015-11-21 11:44:40
阅读次数:
159
一、第一个OC程序#import //导入头文件int main(int argc, const char * argv[]) { //main函数 @autoreleasepool {//自动释放池,我们现在写代码最好都写这里面 NSLog(@"Hel...
分类:
编程语言 时间:
2015-11-16 18:55:39
阅读次数:
243
autorelease什么是自动释放池?autorelease是一种支持引用计数的内存管理方式,只要给对象发送一条autorelease消息,会将对象放到一个自动释放池中,当自动释放池被销毁时,会对池子里面的所有对象做一次release操作自动释放池的优点是什么?1.不用再担心对象释放的时间2.不用...
分类:
其他好文 时间:
2015-11-07 13:26:14
阅读次数:
255
一、基本用法1.会将对象放到一个自动释放池中2.当自动释放池被销毁时,会对池子里的所有对象做一次release3.会返回对象本身4.调用完autorelease方法后,对象的计数器不受影响(销毁时影响)二、好处1.不需要关系想你对象释放的时间,2.不需要再关心什么时候调用release三、使用注意1...
分类:
其他好文 时间:
2015-11-03 22:43:00
阅读次数:
178
autorelease方法不会改变对象的引用计数器,只是将这个对象放到自动释放池中;自动释放池实质是当自动释放池销毁后调用对象的release方法,不一定就能销毁对象(例如如果一个对象的引用计数器>1则此时就无法销毁);由于自动释放池最后统一销毁对象,因此如果一个操作比较占用内存(对象比较多或者对象...
分类:
其他好文 时间:
2015-11-03 21:20:31
阅读次数:
267
@autoreleasepool 自动释放池类的三大特性:封装:隐藏内部实现,稳定外部接口继承:子类复用父类的成员变量、属性以及方法(方法可做不同实现)多态:子类对象指向父类空间OC类组成分为.h文件和.m文件.h做全局变量、属性、函数的声明@interface表示类的接口部分.m做函数的实现@im...
分类:
其他好文 时间:
2015-10-26 20:28:09
阅读次数:
140
OC的内存管理机制采用引用计数的方式来管理内存,分为三种方式,ARC(自动引用计数),MRC(手动引用计数),autorelease(自动释放池),ARC是iOS5之后引入的,是苹果公司为了减少开发者的工作量,降低程序崩溃,内存泄露的风险.引用计数关于引用计数,网上流传的开关灯例子不错,我们把房间的...
分类:
其他好文 时间:
2015-10-09 21:28:13
阅读次数:
129
学习目标1.【掌握】自动释放池2.【理解】ARC机制3.【理解】单个对象的内存管理4.【理解】多个对象的内存管理5.【掌握】ARC机制下的循环引用问题6.【了解】MRC和ARC的兼容7.【了解】MRC自动转为ARC8.【掌握】分类Category一、自动释放池使用@autoreleasepool关键...
分类:
其他好文 时间:
2015-10-08 23:05:02
阅读次数:
268