-
Method Declaration
Procedures
[ FAST ] [ STATIC ] { PUBLIC | PRIVATE } { PROCEDURE | SUB } Identifier ( [ [ BYREF ] Parameter AS Datatype [ , … ] ] [ , ] [ OPTIONAL [ BYREF ] Optional Parameter AS Datatype [ , … ] ] [ , ] [ ... ] ) ... END |
これは手続き、すなわち何も返さないメソッドを宣言します。
ENDキーワードはプロシージャの終わりを示します。
Functions
[ FAST ] [ STATIC ] { PUBLIC | PRIVATE } { FUNCTION | PROCEDURE | SUB } Identifier ( [ [ BYREF ] Parameter AS Datatype [ , … ] ] [ , ] [ OPTIONAL [ BYREF ] Optional Parameter AS Datatype [ , … ] ] [ , ] [ ... ] ) AS Datatype ... END |
これは関数、すなわち値を返すメソッドを宣言します。
ENDキーワードは関数の終わりを示します。
戻り値のデータ型を指定する必要があります。
もちろん、これらの宣言は一意の行に書かなければなりません。 読みやすいようにそれらはそこで分けられています。 |
関数を終了して戻り値を呼び出し元に返すには、RETURNキーワードを使用してください。
Examples
Public Sub Main()
Print Calc(0);; Calc(0.5);; Calc(1)
End 'Determine if the first string ends with the second string
Function Calc(fX As Float) As Float
Return Sin(fX) * Exp(- fX)
End
0 0.290786288213 0.309559875653
Method Access
メソッドは、それが宣言されているクラス内のどこからでもアクセスできます。
- PUBLICキーワードが指定されている場合は、このクラスのオブジェクトへの参照を持つ他のクラスからもアクセス可能です。
- STATICキーワードが指定されている場合、メソッドはクラスの静的変数にのみアクセスできます。
Method Arguments
すべてのメソッド引数はカンマで区切ります。
- OPTIONALキーワードが指定されている場合、キーワードの後のすべてのパラメーターはオプションです。 等号を使用して、パラメーター宣言の後にデフォルト値を指定できます。
- パラメータリストが...で終わる場合、メソッドは追加の引数を取ることができます。 メソッドに渡されるすべての追加の引数は、Paramクラスでアクセスできます。
Examples
Static Public Procedure Main()
...
Public Function Calc(fA As Float, fB As Float) As Float
...
Private Sub DoIt(sCommand As String, Optional bSaveIt As Boolean = True)
...
Static Private Function MyPrintf(sFormat As String, ...) As Intege
Arguments Passed By Reference
BYREFキーワードが指定されている場合、引数は呼び出された関数によって変更される代入式でなければなりません。
Examples
Sub ConvPixelToCentimeter(ByRef Value As Float, Dpi As Integer)
Value = Value / Dpi * 2.54
End
Public Sub Main()
Dim Size As Float
Size = 256
ConvPixelToCentimeter(ByRef Size, 96)
Print Size
End
6.773333333333
関数呼び出しでBYREFを指定しないと、関数宣言でBYREFが指定されていても、引数は値によって渡されます。 言い換えれば、呼び出された関数は引数を参照渡しすることを可能にしますが、呼び出し元はそれを決定します。 |
Just In-Time Compilation
Since 3.2
FASTキーワードが使用されている場合、メソッドはJust In Time Compilerによって最適化されます。
See also
コメント
最新を表示する
NG表示方式
NGID一覧