ホームページ  >  記事  >  バックエンド開発  >  Go言語で構造を定義する方法は何ですか?

Go言語で構造を定義する方法は何ですか?

百草
百草オリジナル
2023-12-12 17:27:361241ブラウズ

Go 言語で構造体を定義する方法は、 1. 構造体フィールドを直接定義する; 2. 埋め込み構造体を使用する; 3. メソッドで構造体を定義する; 4. 構造体フィールドとしてポインタ型を使用する; 5. 配列または構造体フィールドとしてのスライス。 Go 言語では、構造体を使用して関連フィールドのセットを定義できます。これらのフィールドには、基本データ型、ポインタ型、配列型、スライス型、その他の構造体型を使用できます。構造体には 0 個以上のフィールドを含めることができます。必要に応じてカスタマイズできます。

Go言語で構造を定義する方法は何ですか?

このチュートリアルのオペレーティング システム: Windows 10 システム、Go バージョン 1.21、DELL G3 コンピューター。

Go 言語では、構造体 (struct) を使用して関連フィールドのセットを定義できます。これらのフィールドには、基本データ型、ポインター型、配列型、スライス型、またはその他の構造型を使用できます。構造体には 0 個以上のフィールドを含めることができ、必要に応じてカスタマイズできます。

Go 言語で構造体を定義するいくつかの方法を次に示します:

1. 構造体フィールドを直接定義します:

type Person struct {  
    Name string  
    Age  int  
}

上記のコードは、A を定義します。 Person という名前の構造には、Name と Age の 2 つのフィールドが含まれており、それぞれ文字列型と整数型です。

2. 埋め込み構造の使用:

構造内に別の構造を埋め込んで、複数の関連フィールドを組み合わせることができます。

type Student struct {  
    Person   // 嵌入结构体  
    Class    string  
    RollNo   int  
}

上記のコードでは、Student 構造が Person 構造に埋め込まれており、Class と RollNo という 2 つのフィールドも含まれています。

3. メソッドを使用して構造体を定義する:

構造体に対して特定の操作を実行するためのメソッドを構造体に定義できます。メソッドは、構造定義の後にメソッド シグネチャを追加することで実装できます。

type Rectangle struct {  
    Width  int  
    Height int  
}  
  
func (r Rectangle) Area() int {  
    return r.Width * r.Height  
}

上記のコードでは、Rectangle 構造体は、Width と Height という 2 つのフィールドを定義し、長方形の面積を計算する Area という名前のメソッドを定義します。

4. ポインタ型を構造体フィールドとして使用する:

構造体にポインタ型フィールドを含めて、構造体の他のオブジェクトへの参照を保存できます。ポインター型のフィールドは、* 記号を使用して定義できます。

type Book struct {  
    Title   string  
    Author  *Person // 指向Person结构体的指针  
}

上記のコードでは、Book 構造体に Title と Author の 2 つのフィールドが含まれています。Author は Person 構造体へのポインタです。

5. 配列またはスライスを構造体フィールドとして使用する:

構造体に配列またはスライス タイプのフィールドを含めて、同じタイプの要素のセットを格納できます。 。配列またはスライス タイプのフィールドは、角括弧を使用して定義できます。

rree

以上がGo言語で構造を定義する方法は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。