答案:weak
分析:
1、weak在属性所指的对象遭到摧毁时,系统会将weak修饰的属性对象的指针指向nil,在OC给nil发消息是不会有什么问题的;如果使用assign在属性所指的对象遭到摧毁时,属性对象指针还指向原来的对象,由于对象已经被销毁,这时候就产生了野指针,如果这时候在给此对象发送消息,很容造成程序奔溃
注意:如果用strong 会造成循环引用,所以用weak 能避免这种情况
答案:weak
分析:
1、weak在属性所指的对象遭到摧毁时,系统会将weak修饰的属性对象的指针指向nil,在OC给nil发消息是不会有什么问题的;如果使用assign在属性所指的对象遭到摧毁时,属性对象指针还指向原来的对象,由于对象已经被销毁,这时候就产生了野指针,如果这时候在给此对象发送消息,很容造成程序奔溃
注意:如果用strong 会造成循环引用,所以用weak 能避免这种情况
本文标题:iOS开发-修饰代理delegate用weak还是assign?
本文链接:https://www.haomeiwen.com/subject/lkgriqtx.html
网友评论