BlitzMax/Language/Functions

A function is a self contained block of code that can be called from multiple points in your program.

Functions are declared using the syntax:


 * Function Identifier : ReturnType ( Parameters )
 * Function statements...
 * End Function

If ReturnType is omitted, the function defaults to returning an Int.

Parameters is a comma separated list of parameters for the function. The syntax of each parameter is similar to a variable declaration: Identifier : Type. Function parameters may be used inside a function in the same way as local variables.

The Return statement is used to return a value from a function.

Here is an example of a simple function that adds 2 integers and returns their sum:

Function AddInts:Int( x:Int,y:Int ) Return x+y End Function

This function can then be called by other code:

Print AddInts( 10,20 ) 'prints 30!

Function parameters can be assigned constant 'default values' using syntax similar to initializing a variable: Identifier : Type = ConstantExpression.

Default parameters can then be optionally omitted when the function is called:

Function IncInt:Int( n:Int,p:Int=1 ) Return n+p End Function Print IncInt( 1 )  'Prints 2 Print IncInt( 1,3 ) 'Prints 4