In dit WPO worden de functies behandeld. Functies lijken enorm hard op procedures en om deze reden is de uitleg ervan grotendeels gelijklopend. Het grote verschil met procedures is dat een functie altijd een return statement heeft. Functies bestaan in tegenstelling tot procedures uit 5 grote delen:
Hieronder wordt een voorbeeld gegeven van een functie die de som van 2 getallen retourneert.
// write a function to sum two values
private int Sum(int value1, int value2)
{
int s = 0;
s = value1 + value2;
// return the value, function will exit here even if
// there is code behind the return statement
return s;
}
De functie kan ook aangeroepen worden. Merk op dat een functie een waarde teruggeeft. Dit betekent dus dat we deze waarde eerst in een variabele moeten opslaan. Dit gebeurt op dezelfde manier als het toewijzen van een waarde naar een variabele. Het verschil is echter dat de functie nu rechts van het gelijkheidsteken staat. De datatype van de variabele moet overeenkomen met de return-statement.
// first declare a variable for both input values
int val1 = 5;
int val2 = 10;
// declare a variable for the return-statement
int ret;
ret = Sum(val1,val2); // gives 15