weak只能修飾對(duì)象
assign可以修飾對(duì)象也可以修飾基本數(shù)據(jù)類(lèi)型
weak和assign的區(qū)別就是可修飾的變量類(lèi)型不同
assign如果修飾對(duì)象,會(huì)產(chǎn)生野指針問(wèn)題,因?yàn)樾揎棇?duì)象后指針不會(huì)被置空贡羔,如果再次向該對(duì)象發(fā)消息就會(huì)崩潰,造成野指針問(wèn)題簸州。如果修飾的是基本數(shù)據(jù)類(lèi)型則不會(huì)有此問(wèn)題缠借。
weak不會(huì)產(chǎn)生野指針問(wèn)題,因?yàn)閣eak修飾的對(duì)象釋放后指針會(huì)被置為nil跳夭,之后在給該對(duì)象發(fā)消息也不會(huì)崩潰涂圆。
weak表示對(duì)象的弱引用,指向但是并不持有該對(duì)象币叹,引用計(jì)數(shù)也不會(huì)加1润歉,Runtime?中對(duì)該屬性進(jìn)行了相關(guān)操作,無(wú)需處理颈抚,可以自動(dòng)銷(xiāo)毀踩衩。weak用來(lái)修飾對(duì)象,多用于避免循環(huán)引用的地方贩汉。weak?不可以修飾基本數(shù)據(jù)類(lèi)型
此處延深出兩個(gè)技術(shù)點(diǎn)驱富。
weak的底層實(shí)現(xiàn)原來(lái)。
runtime匹舞。
如有問(wèn)題請(qǐng)與本人聯(lián)系