質問:
次の Go コード スニペット内:
<code class="go">func show(i interface{}) { switch t := i.(type) { case *Person: t := reflect.TypeOf(i) //what does t contain? v := reflect.ValueOf(i) //what does v contain? tag := t.Elem().Field(0).Tag name := v.Elem().Field(0).String() } }</code>
リフレクションにおける型と値の違いは何ですか?
答え:
Go では、リフレクションには 2 つの主要な構造体、reflect.Type とreflect が用意されています。 。価値。これらの型を使用すると、実行時にデータをイントロスペクトして操作できます。
提供されたコード スニペット内:
型と値に関する情報にアクセスするには、次のメソッドを使用できます。
以上がGoのreflect.Typeとreflect.Valueの違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。