真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

怎么在go語言中初始化結(jié)構(gòu)體的成員變量

本篇文章給大家分享的是有關(guān)怎么在go語言中初始化結(jié)構(gòu)體的成員變量,小編覺得挺實用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

成都創(chuàng)新互聯(lián)專注于企業(yè)網(wǎng)絡(luò)營銷推廣、網(wǎng)站重做改版、恭城網(wǎng)站定制設(shè)計、自適應(yīng)品牌網(wǎng)站建設(shè)、H5技術(shù)、電子商務(wù)商城網(wǎng)站建設(shè)、集團(tuán)公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站制作、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計等建站業(yè)務(wù),價格優(yōu)惠性價比高,為恭城等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。

初始化方法:1、使用“ins := 結(jié)構(gòu)體類型名{字段1:值,字段2:值,…}”語句初始化,適合選擇性填充字段較多的結(jié)構(gòu)體;2、使用“ins := 結(jié)構(gòu)體類型名{字段1的值,字段2的值,…}”語句初始化,適合填充字段較少的結(jié)構(gòu)體。

結(jié)構(gòu)體在實例化時可以直接對成員變量進(jìn)行初始化,初始化有兩種形式分別是以字段“鍵值對”形式和多個值的列表形式,鍵值對形式的初始化適合選擇性填充字段較多的結(jié)構(gòu)體,多個值的列表形式適合填充字段較少的結(jié)構(gòu)體。

使用“鍵值對”初始化結(jié)構(gòu)體

結(jié)構(gòu)體可以使用“鍵值對”(Key value pair)初始化字段,每個“鍵”(Key)對應(yīng)結(jié)構(gòu)體中的一個字段,鍵的“值”(Value)對應(yīng)字段需要初始化的值。

鍵值對的填充是可選的,不需要初始化的字段可以不填入初始化列表中。

結(jié)構(gòu)體實例化后字段的默認(rèn)值是字段類型的默認(rèn)值,例如 ,數(shù)值為 0、字符串為 ""(空字符串)、布爾為 false、指針為 nil 等。

1) 鍵值對初始化結(jié)構(gòu)體的書寫格式

鍵值對初始化的格式如下:

ins := 結(jié)構(gòu)體類型名{
    字段1: 字段1的值,
    字段2: 字段2的值,
    …
}

下面是對各個部分的說明:

  • 結(jié)構(gòu)體類型:定義結(jié)構(gòu)體時的類型名稱。

  • 字段1、字段2:結(jié)構(gòu)體成員的字段名,結(jié)構(gòu)體類型名的字段初始化列表中,字段名只能出現(xiàn)一次。

  • 字段1的值、字段2的值:結(jié)構(gòu)體成員字段的初始值。

鍵值之間以:分隔,鍵值對之間以,分隔。

2) 使用鍵值對填充結(jié)構(gòu)體的例子

下面示例中描述了家里的人物關(guān)聯(lián),正如兒歌里唱的:“爸爸的爸爸是爺爺”,人物之間可以使用多級的 child 來描述和建立關(guān)聯(lián),使用鍵值對形式填充結(jié)構(gòu)體的代碼如下:

type People struct {
    name  string
    child *People
}
relation := &People{
    name: "爺爺",
    child: &People{
        name: "爸爸",
        child: &People{
                name: "我",
        },
    },
}

代碼說明如下:

  • 第 1 行,定義 People 結(jié)構(gòu)體。

  • 第 2 行,結(jié)構(gòu)體的字符串字段。

  • 第 3 行,結(jié)構(gòu)體的結(jié)構(gòu)體指針字段,類型是 *People。

  • 第 6 行,relation 由 People 類型取地址后,形成類型為 *People 的實例。

  • 第 8 行,child 在初始化時,需要 *People 類型的值,使用取地址初始化一個 People。

提示:結(jié)構(gòu)體成員中只能包含結(jié)構(gòu)體的指針類型,包含非指針類型會引起編譯錯誤。

使用多個值的列表初始化結(jié)構(gòu)體

Go語言可以在“鍵值對”初始化的基礎(chǔ)上忽略“鍵”,也就是說,可以使用多個值的列表初始化結(jié)構(gòu)體的字段。

1) 多個值列表初始化結(jié)構(gòu)體的書寫格式

多個值使用逗號分隔初始化結(jié)構(gòu)體,例如:

ins := 結(jié)構(gòu)體類型名{
    字段1的值,
    字段2的值,
    …
}

使用這種格式初始化時,需要注意:

  • 必須初始化結(jié)構(gòu)體的所有字段。

  • 每一個初始值的填充順序必須與字段在結(jié)構(gòu)體中的聲明順序一致。

  • 鍵值對與值列表的初始化形式不能混用。

2) 多個值列表初始化結(jié)構(gòu)體的例子

下面的例子描述了一段地址結(jié)構(gòu),地址要求具有一定的順序,例如:

type Address struct {
    Province    string
    City        string
    ZipCode     int
    PhoneNumber string
}
addr := Address{
    "四川",
    "成都",
    610000,
    "0",
}
fmt.Println(addr)

運行代碼,輸出如下:

{四川 成都 610000 0}

以上就是怎么在go語言中初始化結(jié)構(gòu)體的成員變量,小編相信有部分知識點可能是我們?nèi)粘9ぷ鲿姷交蛴玫降?。希望你能通過這篇文章學(xué)到更多知識。更多詳情敬請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


網(wǎng)頁題目:怎么在go語言中初始化結(jié)構(gòu)體的成員變量
文章位置:http://weahome.cn/article/pijjdg.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部