Partager via


Guide pratique pour définir un paramètre pour une procédure (Visual Basic)

Un paramètre permet au code appelant de passer une valeur à la procédure lorsqu’il l’appelle. Vous déclarez chaque paramètre d’une procédure de la même façon que vous déclarez une variable, en spécifiant son nom et son type de données. Vous spécifiez également le mécanisme de passage et indiquez si le paramètre est facultatif.

Pour plus d’informations, consultez Paramètres et arguments de procédure.

Pour définir un paramètre de procédure

  1. Dans la déclaration de procédure, ajoutez le nom du paramètre à la liste des paramètres de la procédure, en le séparant d’autres paramètres par des virgules.

  2. Déterminez le type de données du paramètre.

  3. Suivez le nom du paramètre avec une As clause pour spécifier le type de données.

  4. Déterminez le mécanisme de passage souhaité pour le paramètre. Normalement, vous passez un paramètre par valeur, sauf si vous souhaitez que la procédure puisse modifier sa valeur dans le code appelant.

  5. Précèdez le nom du paramètre par ByVal ou ByRef pour spécifier le mécanisme de passage. Pour plus d’informations, consultez Différences entre le passage d’un argument par valeur et par référence.

  6. Si le paramètre est facultatif, précèdez le mécanisme de passage avec Optional et suivez le type de données de paramètre avec un signe égal (=) et une valeur par défaut.

    L’exemple suivant définit le plan d’une Sub procédure avec trois paramètres. Les deux premiers sont obligatoires et le troisième est facultatif. Les déclarations de paramètre sont séparées dans la liste des paramètres par virgules.

    Sub updateCustomer(ByRef c As customer, ByVal region As String, 
      Optional ByVal level As Integer = 0)
      ' Insert code to update a customer object.
    End Sub
    

    Le premier paramètre accepte un customer objet et updateCustomer peut mettre à jour directement la variable passée c , car l’argument est passé par ByRef. La procédure ne peut pas modifier les valeurs des deux derniers arguments, car elles sont passées par ByVal.

    Si le code appelant ne fournit pas de valeur pour le level paramètre, Visual Basic le définit sur la valeur par défaut 0.

    Si le commutateur de vérification de type (Instruction Option Strict) est défini sur Off, vous pouvez omettre la clause As lorsque vous définissez un paramètre. Toutefois, si un paramètre utilise une As clause, toutes doivent l’utiliser. Si le commutateur de vérification de type est On, la As clause est requise pour chaque définition de paramètre.

    La spécification de types de données pour tous vos éléments de programmation est connue sous le nom de typage fort. Lorsque vous définissez Option Strict On, Visual Basic applique une saisie forte. Ceci est fortement recommandé pour les raisons suivantes :

    • Il permet l'assistance d’IntelliSense pour vos variables et paramètres. Cela vous permet de voir leurs propriétés et d’autres membres lorsque vous tapez votre code.

    • Il permet au compilateur d’effectuer la vérification de type. Cela permet d’intercepter les instructions qui peuvent échouer au moment de l’exécution en raison d’erreurs telles que le dépassement de capacité. Cela active la prise en charge d’IntelliSense pour vos variables.

    • Cela entraîne une exécution plus rapide de votre code. Pour cette raison, si vous ne spécifiez pas de type de données pour un élément de programmation, le compilateur Visual Basic l’affecte au Object type. Votre code compilé pourrait avoir à effectuer des conversions aller-retour entre Object et d'autres types de données, ce qui réduit les performances.

Voir aussi