6

関数定義で戻り値を宣言する場合map[string]string、関数本体で宣言した場合と同じように、使用する前に返す必要がありますか?http://play.golang.org/p/iafZbG2ZbY

package main

import "fmt"

func fill() (a_cool_map map[string]string) {
    // This fixes it: a_cool_map = make(map[string]string)
    a_cool_map["key"] = "value"
    return
}
func main() {
    a_cool_map := fill()
    fmt.Println(a_cool_map)
}

panic: runtime error: assignment to entry in nil map

4

1 に答える 1

17

マップタイプ

初期化されていないマップの値はですnil

組み込み関数を使用して、新しい空のマップ値が作成されますmake

マップは、要素を追加できないことを除いて、空のnilマップと同等です。

はい。

于 2012-10-19T00:48:34.653 に答える