C#基礎 レッスン7
定数
constとreadonlyの違いと、それぞれの使いどころを学びましょう。
const — コンパイル時定数
const キーワードで宣言した定数はコンパイル時に値が確定します。宣言と同時に初期化が必要で、 その後は変更できません。数値・文字列・bool型など基本型に使えます。
const は暗黙的にstatic です。インスタンスに依存しません。
const の使い方
数学定数や設定値などに使います。
C#エディタ
readonly — 実行時定数
readonly は実行時に値が確定します。コンストラクタで初期化でき、 new式などの実行時の値も使えます。クラスのフィールドに使います。
const を使う場面
- 数学定数(Pi、Eなど)
- 設定の上限値・下限値
- 固定の文字列定数
- 複数ファイルで共有する定数
readonly を使う場面
- コンストラクタで初期化する値
- 実行時に決まるオブジェクト
- 依存性注入で受け取る値
- 配列・コレクションの参照
readonly の使い方
readonlyはクラスのフィールドとして使い、コンストラクタで初期化できます。
C#エディタ