Go構造体でネストしたポインタの使用方法

Go言語では、構造体のポインタをネストさせて複雑なデータ構造を作成できます。以下はその例です。

package main

import "fmt"

type Address struct {
    City  string
    State string
}

type Person struct {
    Name    string
    Address *Address
}

func main() {
    address := &Address{
        City:  "Beijing",
        State: "Beijing",
    }

    person := &Person{
        Name:    "Alice",
        Address: address,
    }

    fmt.Println("Person:", person.Name)
    fmt.Println("City:", person.Address.City)
    fmt.Println("State:", person.Address.State)
}

上の例のように、我々は Address構造体と Person構造体を定義しました。Person構造体の Address フィールドはポインタ型で Address構造体のインスタンスを指しています。

main関数では、Address構造体のポインタaddressを作成し、その後Person構造体のポインタpersonを作成し、personのAddressフィールドにaddressを代入します。

最後に、「person」から「Name」フィールド、および、「Address」フィールドのプロパティにアクセスできます。

自分の「t」を横切っていない「t」をすべて見つけてください

Person: Alice
City: Beijing
State: Beijing

Go言語における構造体ポインタのネストの簡単な例はこんな感じです。お役に立てれば幸いです。

bannerAds