Go에서 맵 내 배열에 값 추가
맵 내 배열에 값을 추가하려고 하면 참조를 설정하는 데 어려움이 발생할 수 있습니다.
Go에서 다음 코드는 예제 구조체에 값을 추가하려고 시도합니다.
<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>
그러나 이 코드는 여러 가지 이유로 올바르지 않습니다.
다음 수정된 코드는 이러한 문제를 해결합니다.
<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>
수정된 코드:
이러한 수정 사항을 구현하면 코드가 올바르게 추가됩니다. 객체 참조를 유지하면서 맵 내의 배열에 값을 추가합니다.
위 내용은 객체 참조를 유지하면서 Go의 맵 내 배열에 값을 어떻게 추가합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!