Go言語の構造体の初期化と代入の方法について教えてください。

Go言語における構造体の初期化や代入は、以下の2つの方法で行うことができる。

  1. リテラル初期化:構造体の名前そのものを使用し、花の括弧でフィールドの初期値を指定する。例えば:
type Person struct {
    Name string
    Age  int
}

func main() {
    // 初始化并赋值
    p := Person{Name: "Alice", Age: 25}

    // 访问结构体的字段
    fmt.Println(p.Name) // 输出:Alice
    fmt.Println(p.Age)  // 输出:25
}
  1. newキーワードで初期化する方法:newキーワードを使って構造体へのポインタを作成し、構造体のフィールドの値の割り当てにドット記法を使う。例:
type Person struct {
    Name string
    Age  int
}

func main() {
    // 使用new关键字进行初始化
    p := new(Person)
    p.Name = "Bob"
    p.Age = 30

    // 访问结构体的字段
    fmt.Println(p.Name) // 输出:Bob
    fmt.Println(p.Age)  // 输出:30
}

上の例示では構造体型Personを作成しました。これにはNameとAgeの2つのフィールドがあります。次にリテラル初期化メソッドとnewキーワード初期化メソッドを使用して変数pを作成し、そのフィールドに値を代入しました。最後にドット記法で構造体のフィールドにアクセスし、それを表示しました。

bannerAds