主頁 > 知識(shí)庫 > GO語言make()分配用法實(shí)例

GO語言make()分配用法實(shí)例

熱門標(biāo)簽:滁州自建外呼系統(tǒng) 海外照相館地圖標(biāo)注入駐 智能營銷軟件 旅游廁所如何電子地圖標(biāo)注 外呼系統(tǒng)如何接收服務(wù)密碼 工商信用卡外呼系統(tǒng)教程 外呼系統(tǒng)多少錢一年 經(jīng)常接到推銷電話機(jī)器人的電話 客服級(jí)電銷機(jī)器人

本文實(shí)例講述了GO語言make()分配用法。分享給大家供大家參考。具體分析如下:

make()分配:內(nèi)部函數(shù) make(T, args) 的服務(wù)目的和 new(T) 不同。
它只生成切片,映射和程道,并返回一個(gè)初始化的(不是零)的,type T的,不是 *T 的值。

這種區(qū)分的原因是,這三種類型的數(shù)據(jù)結(jié)構(gòu)必須在使用前初始化.
比如切片是一個(gè)三項(xiàng)的描述符,包含數(shù)據(jù)指針(數(shù)組內(nèi)),長度,和容量;在這些項(xiàng)初始化前,切片為 nil 。

對(duì)于切片、映射和程道,make初始化內(nèi)部數(shù)據(jù)結(jié)構(gòu),并準(zhǔn)備要用的值。
記住 make() 只用于映射、切片和程道,不返回指針。要明確的得到指針用 new() 分配

復(fù)制代碼 代碼如下:
package main
import "fmt"
func main() {
 //分配片結(jié)構(gòu);* p==零
 var p *[]int = new([]int)
 *p = make([]int, 100, 100) //這樣寫有點(diǎn)復(fù)雜,很容易就搞亂了
 fmt.Println(p)
 //現(xiàn)在將V分配一個(gè)新的數(shù)組,100個(gè)整型
 //寫法一
 //var v  []int = make([]int, 100)
 //寫法二:非常常用的寫法,簡節(jié)明了
 v := make([]int, 100)
 fmt.Println(v)
}
通過make()還可以靈活地創(chuàng)建數(shù)組切片。如
//創(chuàng)建切片也使用make函數(shù),它被分配一個(gè)零數(shù)組和指向這個(gè)數(shù)組的切片。
//創(chuàng)建一個(gè)初始元素個(gè)數(shù)為5的數(shù)組切片,元素初始值為0
a := make([]int, 5)  // len(a)=5
//切片有長度和容量。切片的最大長度就是它的容量。
//指定一個(gè)切片的容量,通過第三個(gè)參數(shù)。
//創(chuàng)建一個(gè)初始元素個(gè)數(shù)為5的數(shù)組切片,元素初始值為0,并預(yù)留10個(gè)元素的存儲(chǔ)空間
b := make([]int, 5, 10)    // len(b)=5, cap(b)=10
//通過重新切片,可使切片增加。
b = b[:cap(b)] // len(b)=5, cap(b)=5
b = b[1:]      // len(b)=4, cap(b)=4
//直接創(chuàng)建并初始化包含5個(gè)元素的數(shù)組切片
c := []int{1,2,3,4,5}

希望本文所述對(duì)大家的Go語言程序設(shè)計(jì)有所幫助。

您可能感興趣的文章:
  • Go語言中new()和 make()的區(qū)別詳解
  • golang中make和new的區(qū)別示例詳解
  • Go語言里的new函數(shù)用法分析
  • 深入講解Go語言中函數(shù)new與make的使用和區(qū)別

標(biāo)簽:本溪 楚雄 喀什 運(yùn)城 晉城 九江 深圳 湘潭

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《GO語言make()分配用法實(shí)例》,本文關(guān)鍵詞  語言,make,分配,用法,實(shí)例,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《GO語言make()分配用法實(shí)例》相關(guān)的同類信息!
  • 本頁收集關(guān)于GO語言make()分配用法實(shí)例的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章