assign與weak,它們都是弱引用聲明類型,最大的區(qū)別在那呢?
如果用weak聲明的變量在棧中就會(huì)自動(dòng)清空,賦值為nil。
如果用assign聲明的變量在棧中可能不會(huì)自動(dòng)賦值為nil,就會(huì)造成野指針錯(cuò)誤!
他們常用在基本類型屬性,比如BOOL,int等,還有就是delegate。
在使用delegate時(shí),需要注意,非ARC時(shí)是使用assign,但到了ARC時(shí)代,都建議使用weak,這樣更安全。