iOS开发-修饰代理delegate用weak还是assign?

2019-04-06  本文已影响0人  小熊_07cb

答案:weak   

分析:

1、weak在属性所指的对象遭到摧毁时,系统会将weak修饰的属性对象的指针指向nil,在OC给nil发消息是不会有什么问题的;如果使用assign在属性所指的对象遭到摧毁时,属性对象指针还指向原来的对象,由于对象已经被销毁,这时候就产生了野指针,如果这时候在给此对象发送消息,很容造成程序奔溃

注意:如果用strong  会造成循环引用,所以用weak 能避免这种情况

上一篇 下一篇

猜你喜欢

热点阅读