Partager via


Paramètres et arguments d'une procédure

Mise à jour : novembre 2007

Dans la plupart des cas, une procédure a besoin d'informations sur les circonstances dans lesquelles elle est appelée. Une procédure qui exécute des tâches répétitives ou partagées utilise des informations différentes pour chaque appel. Ces informations se composent des variables, constantes et expressions passées à la procédure lorsque celle-ci est appelée.

Un paramètre représente une valeur que vous êtes censé fournir lorsque vous appelez la procédure. La déclaration de la procédure définit ses paramètres.

Vous pouvez définir une procédure sans aucun paramètre, avec un seul paramètre ou avec plusieurs paramètres. La partie de la définition de procédure qui spécifie les paramètres est appelée liste de paramètres.

Un argument représente la valeur que vous fournissez à un paramètre de procédure lorsque vous appelez la procédure. Le code appelant fournit les arguments lorsqu'il appelle la procédure. La partie de l'appel de procédure qui spécifie les arguments est appelée liste d'arguments.

L'illustration suivante affiche le code appelant la procédure safeSquareRoot depuis deux places différentes. Le premier appel passe la valeur de la variable x (4.0) au paramètre number et la valeur de retour dans root (2.0) est assignée à la variable y. Le deuxième appel passe la valeur de littéral 9.0 à number, et assigne la valeur de retour (3.0) à la variable z.

Passage d'un argument à un paramètre

Pour plus d'informations, consultez Différences entre les paramètres et les arguments.

Type de données de paramètre

Définissez un type de données pour un paramètre en utilisant la clause As dans sa déclaration. Par exemple, la fonction suivante accepte une chaîne et un entier.

Function appointment(ByVal day As String, ByVal hour As Integer) As String
    ' Insert code to return any appointment for the given day and time.
    Return "appointment"
End Function

Si le commutateur de vérification de type (Option Strict, instruction) est Off, la clause As est facultative, sauf si un paramètre l'utilise, dans quel cas tous les paramètres doivent l'utiliser. Si la vérification de type est On, la clause As est requise pour tous les paramètres de procédure.

Si le code appelant est censé fournir un argument avec un type de données différent de celui de son paramètre correspondant, tel que Byte à un paramètre String, il doit exécuter l'une des opérations suivantes :

  • Fournissez uniquement des arguments avec des types de données qui s'étendent au type de données du paramètre ;

  • Définissez Option Strict Off pour autoriser des conversions restrictives implicites ; ou

  • Utilisez un mot clé de conversion pour convertir explicitement le type de données.

Paramètres de type

Une procédure générique définit également un ou plusieurs paramètres de type en plus de ses paramètres normaux. Une procédure générique autorise le code appelant à passer différents types de données à chaque appel de la procédure. Il peut ainsi adapter les types de données aux exigences de chaque appel. Consultez Procédures génériques dans Visual Basic.

Voir aussi

Tâches

Comment : définir un paramètre pour une procédure

Comment : passer des arguments à une procédure

Concepts

Procédures dans Visual Basic

Sub, procédures

Function, procédures

Procédures Property

Procédures d'opérateur

Passage d'arguments par valeur et par référence

Surcharge de procédure

Autres ressources

Conversions de type en Visual Basic