名前付き定数 | Programming Place Plus 用語集

トップページ用語集

名称 🔗

解説 🔗

プログラム上での名前(識別子)を与えられている定数のことです。

名前付き定数を用いると、500 とか 'c' といった、それだけを見ても意味を理解できないような定数(マジックナンバー)をソースコード内に直接記述するよりも分かりやすくなり、可読性を高められます。また、を変更する際に、修正すべき場所を見逃すミスを防ぐ効果があります。

非常によく似た用語に「記号定数」があり、実際同じ意味で使うこともよくありますが、記号定数の方がやや広い意味としていることもあり、名前付き定数はスコープを持った定数であることを意味するように使われることがあります。

たとえばC言語の #define はマクロによる置換に過ぎず、型の考慮がないため、記号定数と呼ぶことはあっても、名前付き定数とは呼ばないとする考え方もあります。また、列挙型の列挙子は名前付き定数であると説明されます。

C言語の場合 🔗

C言語では、constconstexpr(C23以降)を用います。ただし、const を使う場合は、読み取り専用の変数という扱いであって、定数ではありません。

const int ARRAY_SIZE = 500;
constexpr int ARRAY_SIZE = 500;

C言語の const についての解説は、C言語編第32章にあります。

C++ の場合 🔗

C++ もC言語と同様ですが、const でも整数型や列挙型であれば定数として扱えます。ただし、constexpr が C++11 から使用できるので、こちらを使った方が良いです。

C++ の const についての解説は、新C++編「配列とポインタ」に、constexpr については新C++編「constexpr」にあります。

参考リンク 🔗

更新履歴 🔗


用語集のトップページへ

Programming Place Plus のトップページへ



はてなブックマーク に保存 Pocket に保存 Facebook でシェア
X で ポストフォロー LINE で送る noteで書く
rss1.0 取得ボタン RSS 管理者情報 プライバシーポリシー
先頭へ戻る