あなたは配列のインデックスに値を割り当てることができるようにしたい場合は、配列へのポインタのマップを持っている必要があります。このコードをチェックしてください(配列として使用する前にすべてのマップキーを開始する必要があります)。
package main
import (
"fmt"
)
func Assign(m map[string]*[2]int, key string, index int, value int) {
if _, ok := m[key]; !ok {
m[key] = &[2]int{}
}
m[key][index] = value
}
func main() {
fmt.Println("Hello, playground")
m := make(map[string]*[2]int)
m["hi"] = &[2]int{2, 3}
m["h"] = &[2]int{4, 5}
//existing key
Assign(m, "h", 1, 4)
//new key
Assign(m, "howdy", 1, 3)
fmt.Println(m["hi"])
fmt.Println(m["h"])
fmt.Println(m["howdy"])
}
その後、配列を根底に値を割り当てるために割り当てることができません。それが必要な場合は、ポインタのマップを作成する必要があります。 – Nebril
@nessunoありがとう、これは10行目の最初の問題を解決しますが、残りの部分も解決する必要があります。配列の特定の値にアクセスし、それに任意の解決策を追加する必要がありますか? –
@Nebrilヒント – nessuno