Menambah Nilai pada Tatasusunan dalam Peta dalam Go
Apabila cuba menambah nilai pada tatasusunan dalam peta, anda mungkin menghadapi kesukaran menetapkan rujukan ke objek Contoh.
Dalam Go, kod berikut cuba menambahkan nilai pada struct Contoh:
<code class="go">var MyMap map[string]Example type Example struct { Id []int Name []string } package main import ( "fmt" ) type Example struct { Id []int Name []string } func (data *Example) AppendExample(id int,name string) { data.Id = append(data.Id, id) data.Name = append(data.Name, name) } var MyMap map[string]Example func main() { MyMap = make(map[string]Example) MyMap["key1"] = Oferty.AppendExample(1,"SomeText") fmt.Println(MyMap) }</code>
Walau bagaimanapun, kod ini tidak betul atas beberapa sebab:
Kod diperbetulkan berikut menangani isu ini:
<code class="go">package main import "fmt" type Example struct { Id []int Name []string } func (data *Example) AppendOffer(id int, name string) { data.Id = append(data.Id, id) data.Name = append(data.Name, name) } var MyMap map[string]*Example func main() { obj := &Example{[]int{}, []string{}} obj.AppendOffer(1, "SomeText") MyMap = make(map[string]*Example) MyMap["key1"] = obj fmt.Println(MyMap) }</code>
Dalam kod yang diperbetulkan ini:
Dengan melaksanakan pembetulan ini, kod ditambah dengan betul nilai pada tatasusunan dalam peta sambil mengekalkan rujukan objek.
Atas ialah kandungan terperinci Bagaimanakah anda menambahkan nilai pada tatasusunan dalam peta dalam Go sambil mengekalkan rujukan objek?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!