LOTUSSCRIPT 言語
関数を定義します。
構文
[ Static ] [ Public | Private ] Function functionName [ ( [ paramList ] ) ] [ As returnType ]
[ statements ]
End Function
要素
Static
既定では、モジュールスコープ内の関数は Private です。クラススコープ内の関数の既定は Public です。
各パラメータ宣言の構文は次のとおりです。
[ ByVal ] parameter [ ( ) | List ] [ As type ]
parameter() は配列変数です。parameter List は parameter をリスト変数として識別します。そうでない場合、parameter には LotusScript で使用できる他の任意のデータ型の変数を指定できます。
As dataType は変数のデータ型を指定します。この節を省略し、parameter にデータ型接尾辞を追加して、スカラーデータ型の変数を宣言できます。この節を省略し、同時に parameter にデータ型接尾辞を追加しない場合 (また、既存の Deftype ステートメントで処理されない場合)、データ型は Variant になります。
returnType には、任意のスカラーデータ型、Variant 型、またはクラス名を指定できます。
As returnType を指定しなければ、戻り値の型は関数名のデータ型接尾辞によって決まります。returnType と接尾辞の両方を同時に指定しないでください。エラーとして処理されます。
returnType を省略し、関数名に接尾辞がないときは、Variant 型か Deftype ステートメントで指定された型の値が返されます。
Public キーワードは、クラスのメンバを宣言するときを除いて、アプリケーションオブジェクトのスクリプトに直接記述したり、アプリケーションオブジェクトスクリプトの %Include ファイル内で使用することはできません。Public 宣言は (Globals) で使用してください。
配列、リスト、型のインスタンス、およびオブジェクトは、引数として値渡しできません。参照渡ししてください。
関数から値を返すには、関数の定義内で functionName に値を代入します。次に示す例を参照してください。
functionName に配列を代入する場合は、関数の本体内で functionName の要素を参照することはできません。このような参照は、関数の再帰呼び出しとみなされます。functionName の要素を参照するには、functionName を Variant 型の変数に代入し、そこで要素に索引を付けます。
関数は値を返しますがサブルーチンは返しません。関数からの戻り値を使用するには、関数の戻り値の型が有効な式の任意の場所に関数呼び出しを置きます。
Function ステートメントで定義された関数によって返された値を使用する必要はありません(組み込み関数によって返された値を使用する必要があります)。 戻り値を使用しない関数を呼び出すには Call ステートメントを使用します。
関数の定義内に別の関数やサブルーチン、プロパティの定義を含めることはできません。
クラスの関数メンバを Static と宣言することはできません。
Exit Function ステートメントを使用して関数を終了できます。
メモ 32 ビット版の Windows を使用している場合、整数は 4 バイトです。データを LotusScript に渡すときには、LotusScript の Integer 型に対応する Short 型の整数 (2 バイト) を使用します。このメモは、Windows プラットフォームのみに適用されます。
例 関連項目