iOS ARC 自动内存管理

2015-04-09  本文已影响138人  小熊willbetheone

ARC不是垃圾回收,而是编译器自动插入代码来减少程序员的代码输入和失误。

同时比垃圾和效率要高,因为其不影响运行时间,相当于自己管理内存。

Strong相当于retain,在ARC环境为默认属性类型。

weak取代之前的assign,对象销毁之后会自动置为nil,防止野指针。

Assign不能自动置为nil,需要手动置为nil。

Delegate基本总是使用weak,以防止循环引用。特殊情况是,希望在dealloc中调用delegate的某些方法进行释放,此时如果使用weak将引起异常,因为此时已经是nil了,那么采用assign更为合适。

上一篇 下一篇

猜你喜欢

热点阅读