変数の使用法

From Apache OpenOffice Wiki
Jump to: navigation, search
doc OOo
Book.png

変数の暗黙的宣言

一般に Basic 言語は、簡易的な記法を許可するように設計されています。このような流れを受けて、Apache OpenOffice Basic でも変数の使用法が簡易化されており、明示的な宣言をすることなく変数を使用できます。このためコード内に使われる変数名は、最初に記述された段階で実態として存在するようになります。既にどのような変数が存在するかにもよりますが、次のサンプルコードを記述するだけで、最大 3 つの変数が宣言されたことになります。

a = b + c

ただし、このような暗黙的な変数宣言は、タイプミスなどによる混乱を招く場合もあるため、推奨されるプログラミングスタイルではありません。たとえば、間違った変数名を入力しても、エラーメッセージは出力されません。インタプリタは、新しい変数名が宣言されたと判断して、初期値として 0 を割り当てて処理を継続します。このようなバグは、コード内の該当箇所を特定するのが困難です。

変数の明示的宣言

変数の暗黙的宣言に伴うエラーを防止する観点から、Apache OpenOffice Basic には次のような機能が用意されています。

Option Explicit

このコードは、各モジュールのプログラム先頭行に記述する必要があります。この機能を使用することで、明示的に宣言されていない変数があった場合にエラーメッセージが表示されるようになります。また、この Option Explicit は、すべての Basic モジュールに記述する必要があります。

変数の明示的な宣言方法として、次のようなコマンドを記述するのが最も簡単です。

Dim MyVar

このサンプルコードでは、MyVar という名前の変数を宣言し、その変数型を variant としています。バリアント型の変数とは、文字列型、整数型、浮動小数点型、ブール型など、使用可能なすべての変数型データを格納できる変数のことです。ここでは、バリアント型変数のいくつかの例を紹介します。

MyVar = "Hello World"      ' Assignment of a string
MyVar = 1                  ' Assignment of a whole number
MyVar = 1.0                ' Assignment of a floating point number
MyVar = True               ' Assignment of a Boolean value

上記のようにして宣言された変数には、同一プログラム内でほかの変数型のデータを割り当てることもできます。ただし、バリアント型変数を使うと柔軟な操作が行えますが、変数は特定の変数型に固定して使用する方が賢明です。また、変数型の一致しないデータ操作が行われると、Apache OpenOffice Basic はエラーメッセージを表示します。

特定の変数型に固定して変数宣言を行うには、次のようにします。

Dim MyVar As Integer   ' Declaration of a variable of the integer type

この変数は整数型として宣言され、整数型データを格納することができます。数値型の変数宣言は、次のようにしても行えます。

Dim MyVar%          ' Declaration of a variable of the integer type

Dim による変数宣言では、複数の変数宣言を一度に行えます。

Dim MyVar1, MyVar2

特定の変数型を指定して変数宣言する場合は、各変数に変数型を指定する必要があります。

Dim MyVar1 As Integer, MyVar2 As Integer

変数型を指定しないと、Apache OpenOffice Basic はバリアント型として変数宣言を行います。たとえば、次のサンプルコードでは、MyVar1 はバリアント型、MyVar2 は整数型として宣言しています。

Dim MyVar1, MyVar2 As Integer

以降の節では、Apache OpenOffice Basic で使用可能な変数型を示し、それらの使用法および宣言法を説明します。


Content on this page is licensed under the Public Documentation License (PDL).
Personal tools