Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
学ぶ 構造体の作成 | 構造体とマップのイントロダクション
Go入門

book構造体の作成

メニューを表示するにはスワイプしてください

これまで、int、float32、string などのさまざまな基本データ型の変数を扱ってきました。しかし、他のデータ型を集めた新しいデータ型を作成することも可能です。

構造体(struct)は、ユーザー定義のデータ型です。そのため、構造体はデータ型と呼ばれることもあります。

上記の図では、Person という構造体の例が示されています。この構造体は、異なるデータ型のフィールド、具体的には nameagesalary を持っています。構造体自体は、その型のインスタンスにどのようなデータが格納されるかを定義する設計図の役割を果たします。Person データ型を使ってインスタンス、つまり変数を作成し、その中に名前、年齢、給与を格納できます。

同様に、Person データ型を使って配列を作成することも可能です。このように、構造体は関連するデータを整理して保存・アクセスしたい場合に非常に便利です。

構造体を宣言する際の構文は以下の通りです:

type structName struct {
    element_1 datatype
    element_2 datatype
    element_3 datatype
    …
}

注意

type および struct は、Golang におけるキーワードです。

上記の構文に従い、前述の Person 構造体の例を実装できます。

次に、配列を含むもう少し複雑な例を示します。

index.go

index.go

copy
1234567
type Student struct { name string age int id int course string grades [5]float32 }

上記の例では、grades というフィールドがあり、これはサイズが 5float32 型の配列です。構造体データの保存、アクセス、変更方法については、次の章で学習します。

また、構造体の定義内で他の構造体(カスタムデータ型)を参照することもできます。例えば、Course 構造体には students というフィールドがあり、これは Student 型のスライスです。

index.go

index.go

copy
1234
type Course struct { name string students []Student }
question mark

myStruct という名前の構造体を宣言する正しい構文はどれですか:

正しい答えを選んでください

すべて明確でしたか?

どのように改善できますか?

フィードバックありがとうございます!

セクション 6.  1

AIに質問する

expand

AIに質問する

ChatGPT

何でも質問するか、提案された質問の1つを試してチャットを始めてください

セクション 6.  1
some-alt