From Free Pascal wiki
A function is a declaration of a routine which may be invoked
- from within the unit that declares it
- from outside the unit if the function is public,
- or from within a program
The routine returns a value as part of its definition. A routine that does not return a value as part of its definition is a procedure.
- Call by value
- Variable parameter (call by reference)
- Out parameter
- Const parameter
- Default parameter
- Open array parameters
- Array of const
Addition of two integers example:
function add(c1, c2 : integer) : integer; begin add := c1 + c2; //or use result := in Object Pascal/Delphi mode end; var total: integer; begin total := add(4, 5); writeln (total); // result is 9 end.