フィールド埋め込みを使用して Go 構造体間で変換するにはどうすればよいですか?

Susan Sarandon
リリース: 2024-10-27 01:58:30
オリジナル
730 人が閲覧しました

How can I convert between Go structs using field embedding?

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 サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!