iOS Swift 值類型與引用類型使用區(qū)別基礎(chǔ)詳解
引言
值類型在傳遞和賦值時將進行復(fù)制,而引用類型只會使用引用對象。
Swift中定義的很多類型都是值類型,如struct、enum以及所有的內(nèi)建類型(Int、Bool、String、Array、Dictionary)都是值類型。class為引用類型。
以最常用的數(shù)組為例
值傳遞
A,B兩個類各有一個Array,把B的arr賦值為A的arr,然后給B的arr添加一個元素。
運行看到A的arr沒有改變,兩個arr的hashValue不同,是兩個對象。賦值時是值傳遞。
引用傳遞
在上面基礎(chǔ)上,將arr的類型改成NSMutableArray,添加方法改成add,其他的不變。
運行看到A的arr也改變了,兩個arr的hashValue相同,是同一個對象。賦值時是引用傳遞。
以上就是iOS Swift 值類型與引用類型使用區(qū)別基礎(chǔ)詳解的詳細內(nèi)容,更多關(guān)于iOS Swift值類型引用類型的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
使用設(shè)計模式中的Singleton單例模式來開發(fā)iOS應(yīng)用程序
這篇文章主要介紹了使用設(shè)計模式中的Singleton單例模式來開發(fā)iOS應(yīng)用程序的例子,示例代碼為傳統(tǒng)的Objective-C語言,需要的朋友可以參考下2016-03-03解決Charles抓包https時,無法查看CONNECT請求的問題
下面小編就為大家分享一篇解決Charles抓包https時,無法查看CONNECT請求的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-01-01安裝win10+黑蘋果雙系統(tǒng)零基礎(chǔ)教程(圖文)
這篇文章主要介紹了安裝win10+黑蘋果雙系統(tǒng)零基礎(chǔ)教程(圖文),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2020-01-01IOS倒計時設(shè)置UIButton標題title的抖動問題
這篇文章主要介紹了IOS倒計時設(shè)置UIButton標題title的抖動問題,在發(fā)送驗證碼后,button狀態(tài)需要變?yōu)閐isable,每隔一秒顯示倒計時時間,下面通過本文給大家介紹設(shè)置方法,一起看看吧2016-12-12iOS - UIButton(UIEdgeInsets)/設(shè)置button上的文字和圖片上下垂直居中對齊
這篇文章主要介紹了iOS - UIButton(UIEdgeInsets)/設(shè)置button上的文字和圖片上下垂直居中對齊的相關(guān)資料,需要的朋友可以參考下2015-09-09