
enumと構造体の基本的な違いとは?
プログラミングを始めたばかりの人にとって、「enum」と「構造体(struct)」という言葉はよく耳にするけど、何が違うのか分からないことも多いですよね。
enum(列挙型)は、限られた選択肢の中から1つだけを選ぶために使います。たとえば、曜日を表すときには「月曜日」「火曜日」「水曜日」など、決まった数の値の中から1つを指定します。
一方、構造体(struct)は、いろいろな種類のデータをまとめて1つのまとまりとして扱えるものです。例えば「人」という構造体なら、名前・年齢・身長など異なる情報をひとまとめに保存できます。
このように、enumは「どれか一つを選ぶ」ため、構造体は「いろんな情報をまとめる」ために使うと覚えましょう。
enumと構造体の具体的な使い方と例
では、実際にどういう風に使うかを具体的に説明します。
例えば、「天気」を表すenumは次のようになります。
enum Weather { Sunny, Cloudy, Rainy }
この場合、Weatherは天気の状態を表し、Sunny(晴れ)、Cloudy(曇り)、Rainy(雨)の3つの選択肢から1つだけ選べます。
一方、構造体の例は「人」の情報をまとめるときに使います。
struct Person { string name; int age; float height; }
このように、名前・年齢・身長と異なる種類の情報を1つにまとめて扱えます。
enumは値の種類を管理するのに便利で、構造体は関連する複数のデータをまとめるのに便利だと覚えましょう。
enumと構造体の違いを分かりやすく比較!
ここで、enumと構造体の違いを表にまとめてみます。
項目 | enum(列挙型) | 構造体(struct) |
---|---|---|
目的 | 限られた選択肢の中から1つを選ぶ | 異なる種類のデータを1つにまとめる |
使い方 | 状態や種類を表現する | 複数の情報を1つのまとまりにする |
データの種類 | 同じ型の定数を複数持てる | 異なる型の変数をまとめられる |
例 | 曜日・天気・スイッチの状態など | 人の情報・商品の詳細・座標など |
この表を見れば、enumは「決まった選択肢」、構造体は「まとめる箱」というイメージが強いことがわかりますね。
どちらもプログラミングで大切な役割を持っているので、使いどころを理解してぜひ活用してください。
enumはプログラミングで「限定された選択肢の中から1つだけを選ぶ」ために使われますが、実はenumの各値は内部的には数字として扱われています。
例えば、enumの値が0から始まる整数で管理されているので、enumに新しい選択肢を足すときには順序や割り当てる数値に注意が必要です。
このことを知っておくと、enumを使うときのバグを防ぎやすくなりますし、enumの仕組みをさらに理解しやすくなりますよ。
前の記事: « 収用と買収の違いを徹底解説!知っておきたいポイントまとめ
次の記事: 「建て替え」と「建替え」の違いとは?わかりやすく徹底解説! »