C# で定数を定義する方法

定数とは、値がコンパイル時に設定され、変更できないフィールドです。 定数を使用して、特殊な値の数値リテラル ("マジック ナンバー") の代わりにわかりやすい名前を提供します。

注意

C# では、C と C++ で通常使用される方法で、#define プリプロセッサ ディレクティブを使用して定数を定義することはできません。

整数型 (intbyte など) の定数値を定義するには、列挙型を使用します。 詳細については、「enum」を参照してください。

整数型以外の定数を定義する 1 つの方法は、Constants という名前の 1 つの静的クラスにそれらをグループ化することです。 これを行うには、次の例に示すように、クラス名の前に定数へのすべての参照を付ける必要があります。

static class Constants
{
    public const double Pi = 3.14159;
    public const int SpeedOfLight = 300000; // km per sec.
}

class Program
{
    static void Main()
    {
        double radius = 5.3;
        double area = Constants.Pi * (radius * radius);
        int secsFromSun = 149476000 / Constants.SpeedOfLight; // in km
        Console.WriteLine(secsFromSun);
    }
}

クラス名修飾子を使用すると、定数を使用するユーザーは、それが定数であり、変更できないことがわかります。

関連項目