一:Array 的內(nèi)存布局 在 Swift 中 Array 其實(shí)是用結(jié)構(gòu)體實(shí)現(xiàn)的,所以 Array 是值類型。 通過直接打印 可可以看出來 是值類型 我們知道結(jié)構(gòu)體的大小取...
一:String 的內(nèi)存布局 1. String 源碼分析 在 Swift源碼[https://github.com/apple/swift] 中找到 String.swif...
一:Sequence 對于 Sequence 協(xié)議來說,表達(dá)的是既可以是一個(gè)有限的集合,也可以是一個(gè)無限的集合,而它只需要提供集合中的元素,和如何訪問這些元素的接口即可。 1...
一: 泛型 1.1 什么是泛型 泛型可以將類型參數(shù)化,提高代碼復(fù)用效率,減少代碼量。 1.2 泛型解決的問題 下面是一個(gè)標(biāo)準(zhǔn)的非泛型函數(shù) swapTwoInts(_:_:),...
一:協(xié)議 1.1 協(xié)議的定義 協(xié)議可以用來定義 方法、屬性 、下標(biāo)的聲明 ,協(xié)議可以被 枚舉、結(jié)構(gòu)體、類遵守(多個(gè)協(xié)議之間用逗號隔開) 1.2 協(xié)議的基本語法 協(xié)議屬性要求:...
一:函數(shù)類型 每個(gè)函數(shù)都有種特定的函數(shù)類型,函數(shù)的類型由函數(shù)的參數(shù)類型和返回類型組成。 上述代碼中 (Double, Double) -> Double 就是函數(shù)類型函數(shù)在 ...
一:元類型和 .self 1. AnyObject AnyObject 代表任意類的實(shí)例,類的類型,僅類遵守的協(xié)議。 可以看見 的 表示的就是一個(gè)實(shí)例對象, 的 表示的就是原...
一:枚舉(Enum) 1. 枚舉的基本用法 Swift 中通過 enum 關(guān)鍵字來聲明一個(gè)枚舉 Swift 中的枚舉則更加靈活,并且不需給枚舉中的每一個(gè)成員都提供值。如果一個(gè)...
一:指針 1. 指針的定義 Swift 中引用了某個(gè)引用類型實(shí)例的常量或變量,與 C 語言中的指針類似,不過它并不直接指向某個(gè)內(nèi)存地址,也不要求你使用星號(*)來表明你在創(chuàng)建...