亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在 Golang 中初始化嵌套列表?

如何在 Golang 中初始化嵌套列表?

Go
慕雪6442864 2022-12-05 11:20:12
我有一個這樣的嵌套結構:type Project struct {                   FolderStructure     []FolderItem     Description         string}type FolderItem struct {    SubFolderStructure  []SubFolderItem    Description         string}type SubFolderItem struct {    SubSubFolderStructure []SubSubFolderItem    Description           string}type SubSubFolderItem struct {    Content               string    Description           string}我想知道如何初始化它,否則invalid memory address or nil pointer dereference會被扔掉。提前致謝!
查看完整描述

1 回答

?
FFIVE

TA貢獻1797條經驗 獲得超6個贊

最簡單的初始化方法是創建多個實例作為變量,然后重用它們將值分配給嵌套結構。


這是工作示例:https ://go.dev/play/p/6p3VFljyqom和下面相同,這只是一種方法,感覺它是最簡單的。


package main


import "fmt"


type Project struct {

    FolderStructure []FolderItem

    Description     string

}


type FolderItem struct {

    SubFolderStructure []SubFolderItem

    Description        string

}


type SubFolderItem struct {

    SubSubFolderStructure []SubSubFolderItem

    Description           string

}


type SubSubFolderItem struct {

    Content     string

    Description string

}


func main() {

    ssfi1 := SubSubFolderItem{

        "content1",

        "description1 - SubSubFolderItem",

    }

    ssfi2 := SubSubFolderItem{

        "content2",

        "description2 - SubSubFolderItem",

    }

    sfi := SubFolderItem{

        SubSubFolderStructure: []SubSubFolderItem{ssfi1, ssfi2},

        Description:           "description 1 - SubFolderItem",

    }

    fi := FolderItem{

        SubFolderStructure: []SubFolderItem{sfi, sfi},

        Description:        "description 1 - FolderItem",

    }

    p := Project{

        FolderStructure: []FolderItem{fi, fi},

        Description:     "description 1 - Project",

    }


    fmt.Println(ssfi1)

    fmt.Println(ssfi2)

    fmt.Println(sfi)

    fmt.Println(fi)

    fmt.Println(p)

}



查看完整回答
反對 回復 2022-12-05
  • 1 回答
  • 0 關注
  • 121 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號