assign和weak的区别是什么?
一般情况下
assign:修饰基本数据类型
weak:修饰控件,代理的时候使用
控件一般使用weak的原因是为什么呢?
weak:成员变量是弱指针引用
weak:不会计数器 +1,如果对象销毁,指针也跟着清空
assign:声明一个对象,使用__unsafe_unretained修饰
assign:不会计数器+1,如果对象销毁,指针不会销毁
__unsafe_unretained会造成野指针错误
一般情况下
assign:修饰基本数据类型
weak:修饰控件,代理的时候使用
控件一般使用weak的原因是为什么呢?
weak:成员变量是弱指针引用
weak:不会计数器 +1,如果对象销毁,指针也跟着清空
assign:声明一个对象,使用__unsafe_unretained修饰
assign:不会计数器+1,如果对象销毁,指针不会销毁
__unsafe_unretained会造成野指针错误