2016-07-31 2 views
3

golangの地図mについては、単にt.Key()を使用してキータイプを得ることができます。Golangは、マップ値の型を取得する方法を反映していますか?

しかし、私はどのようにマップの値の種類を取得するのだろうか?

地図が空の場合、v.MapIndexを使用することはできません。あなたはこれをしたい理由

var m map[string]int 
fmt.Println(reflect.TypeOf(m).Elem()) 
// output: int 
+0

は、私が聞いても:マップタイプの

m := map[string]int{} t := reflect.TypeOf(m) v := reflect.ValueOf(m) t.Key() v.MapIndex() 
svenwltr

+0

いつか反映させる必要があるので、キーと値を新しくし、各ペアの値を注入します。 – navins

答えて

5

Elem()

はあなたの要素の型を与えるのだろうか? Goには強い型付けがあります。つまり、型はコンパイル時に決定されます。したがって、開発者がどのようなタイプであるかは明らかです。
関連する問題