Go 構造体間の変換
複数の構造体を操作する場合、多くの場合、ある構造体から別の構造体にデータを変換する必要があります。 Go では、これはフィールド埋め込みと呼ばれる手法によって実現できます。
次のコード スニペットを考えてみましょう:
<code class="go">type A struct { a int b string } type B struct { A // field embedding of A c string // more fields }</code>
この例では、構造体 B は構造体 A を埋め込みます。これは、構造体 B が構造体 B を埋め込むことを意味します。独自のフィールドに加えて、構造体 A のすべてのフィールドが含まれています。
型 A の値を型 B に変換するには、単に A のフィールドを B のフィールドに代入するだけです。例:
<code class="go">func main() { structA := A{a: 42, b: "foo"} // assign structA to the embedded A field of structB structB := B{A: structA} }</code>
フィールドの埋め込みにより、構造体間で簡単に変換できるため、手動でフィールドをコピーしたり、変換メソッドを作成したりする必要がなくなります。
以上がフィールド埋め込みを使用して Go 構造体間で変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。