ARC(Automatic Reference Counting自动引用计数) ARC的判断准则:只要没有强指针指向对象,对象就会被释放 指针分为2种: 1>强指针:默认情况下声明的指针都是强指针 __strong (作为@property的参数时写作strong) 2>弱指针:__weak (作为@property的参数时写作weak) ARC的特点: 1>不允许调用retain、release、retainCount等手动管理内存的方法 2>允许重写dealloc方法,但是不允许在内部调用super的dealloc方法 3>@property的参数: *strong: 用于ARC中;适用于OC对象类型,相当于非ARC中的retain *weak: 用于ARC中;适用于OC对象类型,相当于非ARC中的assign *assign: ARC和非ARC通用;适用于非OC对象类型,比如基本数据类型int ARC中的两端循环引用及解决方案: 一端用strong,另一端用weak 非ARC中的两端循环引用及解决方案: 一端用retain,另一端用assign
|