美文网首页
代理修饰之assign和week

代理修饰之assign和week

作者: 与时间共舞 | 来源:发表于2018-04-10 07:57 被阅读0次

问题:程序crash掉,报错EXC_BAD_ACCESS

经过一番研究,发现如果使用

@property (nonatomic, assign, readwrite) id delegate;

声明一个delegate,那么即便delegate指向的对象销毁了,delegate中依然会保存之前对象的地址

即,delegate成为了一个野指针...

而使用weak,则不会有上述问题,当delegate指向的对象销毁后,delegate = nil,

所以答案就是,使用weak。

相关文章

  • 代理修饰之assign和week

    问题:程序crash掉,报错EXC_BAD_ACCESS 经过一番研究,发现如果使用 @property (non...

  • 内存管理相关

    一、ARC管理内存是使用assign还是weak? assign: 可以修饰基本数据类型,也可以修饰对象。修饰代理...

  • 修饰符

    assign 修饰不带 * 的 copy 修饰字符串,block strong 修饰系统的类 weak 修饰代理

  • iOS中的关键字,深拷贝和浅拷贝。

    weak 和assign 的区别weak修饰对象,assign可以修饰基本数据类型和对象 不过weak修饰对象,...

  • 2018-03-14 属性修饰符 -iOS

    1: 基本数据类型修饰符 assign 2:引用数据类型:strong 3:weak修饰代理 4:copy修饰bl...

  • iOS开发中的几种模式总结

    1.代理模式 在开发中我们经常使用代理,或自己写个代理,而代理属性都用weak(assign)修饰,看过有些开发者...

  • iOS 为什么要用weak修饰代理(delegate

    在开发中我们经常使用代理,或自己写个代理,而代理属性都用weak(assign)修饰,看过有些开发者用strong...

  • iOS 代理为啥要用weak修饰? (刨根问底一)

    在开发中我们经常使用代理,或自己写个代理,而代理属性都用weak(assign)修饰,看过有些开发者用strong...

  • weak和assign的区别

    weak只能修饰对象 assign可以修饰对象也可以修饰基本数据类型 weak和assign的区别就是可修饰的变量...

  • assgin和weak区别

    面试必备。 ARC才有weak。 weak只能修饰对象类型,主要用控件及代理,而assign使用于修饰基本类型的。...

网友评论

      本文标题:代理修饰之assign和week

      本文链接:https://www.haomeiwen.com/subject/mcqghftx.html