struct resolution
class videomodel
//結構體自動的提供了成員逐一構造器
let resolution = resolution(width: 1, height: 9)
print("\(resolution.width)") //1
//結構體、列舉都是值型別,賦值的時候都會複製 指向的都不是同乙個位址
var hd = resolution
hd.width = 100
print(hd.width) //100
let videomodel = videomodel()
videomodel.resolution = resolution
videomodel.interlaced = true
videomodel.framerate = 1080
videomodel.name = "星球大戰"
print("\(videomodel.name),\(videomodel.resolution),\(videomodel.interlaced),\(videomodel.framerate)") //optional("星球大戰"),resolution(width: 1, height: 9),true,1080.0
//類是引用型別,當將乙個例項賦給另外乙個例項的時候,這兩個例項指向的是同一塊記憶體位址
var tenenty = videomodel
print(tenenty.framerate) //1080
tenenty.framerate = 2160
print(tenenty.framerate)
if tenenty === videomodel
if tenenty !== videomodel
//同樣的 字串、陣列、字典也是引用型別,它們在賦值或者被 傳入函式或者方法的時候都不會發生值拷貝,而是發生現有例項的引用
Swift學習之類和結構體的建立
隨著一步步的學習,學習到的新知識越來越多了,不管是新的還是舊的,都禁不住時間的堆積,再熟悉的知識點時間久了都會漸漸的忘記,也許這就是人們生活中一種潛在的惰性吧,看似非常熟悉的東西,等到真正要用的時候,卻拿不出手來,總是似懂非懂的,所以無論知識點多麼多,過的時間多久,我們都要經常拿出來練習下,以免忘記...
Swift學習 類和結構體補充
類的構造器 class zs init name string 析構 與之前寫oc中的dealloc功能一樣 deinit 預設構造器 var zs zs 呼叫了重寫的構造方法 var zs1 zs name 帥不 zs1.name 定義結構體 struct length 呼叫了預設的構造器 ini...
swift 學習記錄(類和結構體)
類和結構體是人們構建 所用的一種通用且靈活的構造體。我們可以使用完全相同的語法規則來為類和結構體 定義屬性 常量 變數 和新增方法,從而擴充套件類和結構體的功能。類和結構體對比 swift 中類和結構體有很多共同點。共同點在於 1 定義屬性用於儲存值 2 定義方法用於提供功能 3 定義附屬指令碼用於...