強引用和弱引用的區(qū)別 ios中什么是弱變量跟強變量?
ios中什么是弱變量跟強變量?弱變量:在某些情況下,當兩個對象擁有彼此的強引用時,會有一個保留周期,這樣兩個對象都不能被銷毀,即使其中一個不再使用。這個問題可以通過在兩個對象之間建立一個弱引用來解決。
ios中什么是弱變量跟強變量?
弱變量:在某些情況下,當兩個對象擁有彼此的強引用時,會有一個保留周期,這樣兩個對象都不能被銷毀,即使其中一個不再使用。這個問題可以通過在兩個對象之間建立一個弱引用來解決。我們可以在父對象和子對象之間使用強引用,在子對象和父對象之間使用弱引用。這樣,就沒有循環(huán)維護,弱變量也不能防止被引用對象被破壞。在這種情況下,子對象不能阻止父對象被銷毀。此時,子對象將被系統(tǒng)自動設(shè)置為nil,這也避免了無意中向其發(fā)送消息而導致崩潰的問題。因為向nil對象發(fā)送消息不會響應(yīng)。
可以使用弱關(guān)鍵字聲明弱變量:
強變量:通常弧中的所有指針變量都是強變量。引用對象到對象u將新對象分配到對象u舊對象使對象u新對象自動保留,而舊對象自動保留u舊對象將在分配時釋放。默認情況下,強變量將被初始化為0,無論是實例變量、局部變量還是全局變量
如果是這樣,IOS將很快消亡,一套結(jié)合了軟件和硬件的新手機將取代當前的iPhone。