Page de démarrage > cat > methoddecl 
 en de es it nl pl pt pt_BR mk sq ca hu cs tr ar fa id vi ko ja ru zh zh_TW eo
Précédent  Suivant  Éditer  Renommer  Annuler  Rafraîchir  Rechercher  Administration  
Documentation
Historique
 
Déclaration de méthode

Les procédures

[ STATIC ] { PUBLIC | PRIVATE } { PROCEDURE | SUB }
  Identificateur
  (
    [ [ BYREF ] Paramètre AS Datatype [ , ... ] ] [ , ]
    [ OPTIONAL [ BYREF ] _ ParamètreOptionel_ AS TypeDeDonnée [ , ... ] ] [ , ] [ ... ]
  )
  ...
END

Déclare une procédure, c'est-à-dire une Méthode qui ne retourne rien.

Le mot-clé END indique la fin de la procédure.

Les fonctions

[ STATIC ] { PUBLIC | PRIVATE } { FUNCTION | PROCEDURE | SUB }
  Identificateur
  (
    [ [ BYREF ] Paramètre AS Datatype [ , ... ] ] [ , ]
    [ OPTIONAL [ BYREF ] ParamètreOptionel AS TypeDeDonnée [ , ... ] ] [ , ] [ ... ]
  )
  AS TypeDeDonnée
  ...
END

Déclare une fonction, c'est-à-dire une Méthode qui retourne une valeur.

Le mot-clé END indique la fin de la fonction.

Le type de donnée de la valeur de retour doit être indiqué.

Bien sûr, ces déclarations doivent être écrites sur une ligne unique. Elles sont séparées ici pour que ce soit lisible.

Utilisez le mot-clé RETURN pour terminer la fonction et passer la valeur de retour à l'appelant.

Exemple

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

Accessibilité de la méthode

La Méthode est accessible partout dans la classe où elle est déclarée.

Arguments de méthode

Tous les paramètres de Méthode sont séparés par des virgules.

Exemple

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

Arguments Passés Par Référence

Lorsque le mot-clé BYREF est spécifié, l'argument doit être une expression d'affectation qui sera modifiée par la fonction appelée.

Exemple

SUB ConvPixelEnCentimetre(BYREF Value as Float, Dpi AS Integer)

  Value = Value / Dpi * 2.54

END

PUBLIC SUB Main()

  DIM Size AS Float

  Size = 256
  ConvPixelEnCentimetre(BYREF Size, 96)
  PRINT Size

END

6.773333333333

Si vous ne spécifiez pas BYREF lors de l’appel de fonction, l’argument est alors passé par valeur, même si BYREF était spécifié dans la déclaration de fonction.

En d’autres termes : la fonction appelée autorise le passage d'argument par référence à l'endroit où l’appelant le décide.

Voir aussi

 Déclaration de variables, Déclaration de variable locale, Utilisation des mots réservés comme identificateur, Param, Passer Un Argument Par Référence, }