ユーザー定義定数 (Visual Basic)

定数とは、不変の数値または文字列の代わりとなるわかりやすい名前です。 定数に格納された値は、その名が示すとおり、アプリケーションの実行中に変わることはありません。 処理するコントロールまたはコンポーネントで定義されている定数を使用するか、または独自に作成できます。 独自に作成した定数は、"ユーザー定義" と呼ばれます。

定数の宣言は、変数名を作成するときと同じガイドラインに従い、Const ステートメントを使用して行います。 Option StrictOn を指定した場合、定数の型を明示的に宣言する必要があります。

Const ステートメントの使用法

Const ステートメントでは、数学的な数量または日時の値を表すことができます。

Const conPi = 3.14159265358979
Public Const conMaxPlanets As Integer = 9
Const conReleaseDate = #1/1/1995#

また、String 型の定数を定義することもできます。

Public Const conVersion = "07.10.A"
Const conCodeName = "Enigma"

通常、等号右側の式 ( = ) には数値またはリテラル文字列を指定しますが、数値または文字列が返される式を指定することもできます (ただし、式に関数の呼び出しは含められません)。 以前に定義した定数をもとに、定数を定義することもできます。

Const conPi2 = conPi * 2

ユーザー定義定数のスコープ

Const ステートメントのスコープは、同じ場所で宣言されている変数と同じです。 次のいずれかの方法で、スコープを指定できます。

  • プロシージャ内にのみ存在する定数を作成するには、該当するプロシージャ内で宣言します。

  • クラス内のすべてのプロシージャで利用可能で、モジュール外のコードでは利用できない定数を作成するには、そのクラスの宣言セクションで宣言します。

  • アセンブリのすべてのメンバーで利用可能で、アセンブリのクライアント以外では利用できない定数を作成するには、クラスの宣言セクションで Friend キーワードを使用して宣言します。

  • アプリケーション全体で利用可能な定数を作成するには、クラスの宣言セクションで Public キーワードを使用して宣言します。

詳細については、定数の宣言方法に関するページを参照してください。

循環参照の回避

定数は別の定数をもとに定義できるため、2 つ以上の定数間で "サイクル"、つまり循環参照を生み出してしまうことがあります。 循環参照は、次の例に示すように、パブリック定数が 2 つ以上あり、それぞれが他の定数をもとに定義されている場合に発生します。

Public Const conA = conB * 2
Public Const conB = conA / 2

循環参照が発生すると、Visual Basic からコンパイラ エラーが生成されます。

関連項目