浅谈delegate为什么用weak修饰

在OC中,delegate用weak修饰是为了防止循环引用 如上图所示,根视图强引用着控制器,控制器强引用着view,view强引用delegate,如果delegate用strong修饰,那么delegate就是强引用控制器,会造成三者的强引用,当根视图释放控制器时,由于delegate强引用着控制器,控制器并不会被释放。如果delegate用weak修饰,控制器就会释放。
相关文章
相关标签/搜索