一、
在前面我們總結(jié)過(guò)retain的循環(huán)引用,照成的對(duì)象不能被釋放的問(wèn)題。而strong也一樣,因?yàn)榈览硎且粯拥牟辉訇U述和舉例子。
這里主要總結(jié)一下循環(huán)引用的解決方案。
1>非ARC
一端用retain,一端用assign
2>ARC
一端用strong,一端用weak
例子:
人與狗,人可以擁有狗,而狗的主人是人。代碼自寫(xiě)。
二、
我們來(lái)談?wù)劮茿RC項(xiàng)目如何全部轉(zhuǎn)換成ARC項(xiàng)目。點(diǎn)擊XCode上得Edit==》Reactor==》...Convert to ARC....
一路next就可以自動(dòng)轉(zhuǎn)換成ARC項(xiàng)目,會(huì)首先生成預(yù)覽讓你進(jìn)行對(duì)比,就如同BeyondCompare進(jìn)行代碼的比較。
如何混合ARC與非ARC。
1.選中項(xiàng)目
2.點(diǎn)擊Build Phase,選中Complie Soure
3.雙擊想用ARC得文件,輸入f-objc-arc
雙擊不想用ARC的文件,輸入fno-objc-arc
這里的f十標(biāo)簽flag的意思,就是做個(gè)標(biāo)志,來(lái)表示是否使用ARC