これがコードです。mp["12"]
にアクセスするとパニックが起きると予想していましたが、失敗してしまいました。そこでは正常に動作します
// You can edit this code! // Click here and start typing. package main import "log" func main() { var mp map[string]int = nil log.Println(mp["12"], "12") // works fine if mp == nil { panic("map is nil") // panic here } }
nilマップから読み取ることはできますが、書き込むことはできません。言語仕様には次のように書かれています:
以上がnil マップを読み取ろうとしたときに Go がパニックにならないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。