Method Declaration
Procedures
[ STATIC ] { PUBLIC | PRIVATE } { PROCEDURE | SUB }
Identifier
(
[ Parameter AS Datatype [ , ... ] ] [ , ]
[ OPTIONAL Optional Parameter AS Datatype [ , ... ] ] [ , ] [ ... ]
)
...
END
This declares a procedure, i.e. a
method that returns nothing.
The
END keyword indicates the end of the procedure.
Functions
[ STATIC ] { PUBLIC | PRIVATE } { FUNCTION | PROCEDURE | SUB }
Identifier
(
[ Parameter AS Datatype [ , ... ] ] [ , ]
[ OPTIONAL Optional Parameter AS Datatype [ , ... ] ] [ , ] [ ... ]
)
AS Datatype
...
END
This declares a function, i.e. a
method that returns a value.
The
END keyword indicates the end of the function.
The datatype of the return value must be specified.
 |
Of course, these declarations must be written on a unique line. They are separated there so that it is readable.
|
Use the
RETURN keyword to terminate the function and pass the return value back to the caller.
Voorbeeld
FUNCTION Calc(fX AS Float) AS Float
RETURN Sin(fX) * Exp(- fX)
END
PUBLIC SUB Button1_Click()
PRINT Calc(0);; Calc(0.5);; Calc(1)
END
0 0.290786288213 0.309559875653
Method Access
The
method is accessible everywhere in the
class it is declared.
- If the PUBLIC keyword is specified, it is also accessible to the other classes having a reference to an object of this class.
- If the STATIC keyword is specified, the method can only access to the static variables of the class.
Method Arguments
All
method arguments are separated by commas.
- If the OPTIONAL keyword is specified, all parameters after the keywords are optional. You can specify a default value after the parameter declaration by using the equal sign.
- If the parameters list end with ..., then the method can take extra arguments. Every additional argument passed to the method is accessible with the Param class.
Voorbeeld
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 Integer