Golang的基本类型、引用类型、复合类型
1、基礎(chǔ)內(nèi)置類型:
????????包括數(shù)值類型、字符串類型、布爾類型、數(shù)組等除5種引用類型和復(fù)合類型外都是基礎(chǔ)內(nèi)置類型。當(dāng)對這些類型的值進(jìn)行增加或者刪除的時候會創(chuàng)建一個新值,因此當(dāng)把這些類型的值傳遞給方法或者函數(shù)時,傳遞的也是一個對應(yīng)值的副本。
????????對數(shù)值類型來說,零值是0;對字符串來說,零值是空字符串;對布爾類型,零值是 false。習(xí)慣是使用關(guān)鍵字 var創(chuàng)建變量并初始化零值,如果被初始化為非零值通常是用簡短模式。
2、引用類型:
????????五種引用類型變量:切片slice、映射map、通道channel、接口interface和函數(shù)類型func()
。引用類型其實是一個標(biāo)頭( header)值,里面包含一個指向底層數(shù)據(jù)結(jié)構(gòu)的指針,因此通過復(fù)制傳遞一個引用類型的值的副本時,本質(zhì)上是傳遞指針,還是共享底層的數(shù)據(jù)結(jié)構(gòu)。
????????引用類型作為參數(shù)時,稱為淺拷貝,形參改變,實參數(shù)跟隨變化.因為傳遞的是地址,形參和實參都指向同一塊地址
????????值類型作為參數(shù)時,稱為深拷貝,形參改變,實參不變,因為傳遞的是值的副本,形參會新開辟一塊空間,與實參指向不同
3、復(fù)合類型:
? ? ? ? 結(jié)構(gòu)體和數(shù)組
總結(jié)
以上是生活随笔為你收集整理的Golang的基本类型、引用类型、复合类型的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Golang的for range遍历
- 下一篇: 12 种经典亿级流量架构之资源隔离思想与