Gambas 3/Gambas3LeLangage/Les fonctions

Les fonctions

modifier

Une fonction se caractérise par le mot Function.

Il faut spécifier un type de retour pour la valeur que nous allons retourner.

Le mot Return à la fin du code permet de définir la valeur de retour.

' Gambas module file

Public Function GetTwoTimes(f As Float) As Float
  Dim fResult As Float
  fResult = f + f
  Return fResult
End

Public Function Divide(f As Float) As Float
  Return (f / 2)
End

Public Sub Main()
  ' default values
  Dim sVal1 As String = "4"
  Dim sVal2 As String = "6" 
  Dim fVal1 As Float = 4.0
  Dim fVal2 As Float = 6.0
  
  ' get value from arguments 
  If Application.Args[1] Then sVal1 = Application.Args[1] 
  If Application.Args[2] Then sVal2 = Application.Args[2] 
  If IsFloat(sVal1) Then fVal1 = CFloat(sVal1)
  If IsFloat(sVal2) Then fVal2 = CFloat(sVal2)
    
  Print "We use functions now ! "
  Print "  " & CStr(fVal1) & " * 2 = " & GetTwoTimes(fVal1)
  Print "  " & CStr(fVal2) & " / 2 = " & Divide(fVal2)
End

Le code ci-dessus contient deux fonctions.

Pour les curieux, Application.Args est une collection contenant les arguments passés au programme.

Pour passer des arguments, procédez ainsi : après avoir généré l'exécutable, vous ouvrez le terminal dans le dossier de l'application puis vous tapez la commande comme suit :

  gbr3 executable.gambas argument1 arg2

Une fonction peut prendre zéro, un ou plusieurs arguments comme pour un sous-routine.

Une fonction peut appeler une autre fonction, etc.