Partager via


Liste de paramètres (Visual Basic)

Spécifie les paramètres attendus par une procédure lorsqu’elle est appelée. Plusieurs paramètres sont séparés par des virgules. Voici la syntaxe d’un paramètre.

Syntaxe

[ <attributelist> ] [ Optional ] [{ ByVal | ByRef }] [ ParamArray ]
parametername[( )] [ As parametertype ] [ = defaultvalue ]

Pièces

attributelist
Optionnel. Liste des attributs qui s’appliquent à ce paramètre. Vous devez placer la liste d’attributs entre crochets< (« » et «> »).

Optional
Optionnel. Spécifie que ce paramètre n’est pas obligatoire lorsque la procédure est appelée.

ByVal
Optionnel. Spécifie que la procédure ne peut pas remplacer ou réaffecter l’élément variable sous-jacent à l’argument correspondant dans le code appelant.

ByRef
Optionnel. Spécifie que la procédure peut modifier l’élément de variable sous-jacent dans le code appelant de la même façon que le code appelant lui-même.

ParamArray
Optionnel. Spécifie que le dernier paramètre de la liste de paramètres est un tableau facultatif d’éléments du type de données spécifié. Cela permet au code appelant de passer un nombre arbitraire d’arguments à la procédure.

parametername
Obligatoire. Nom de la variable locale représentant le paramètre.

parametertype
Obligatoire si Option Strict est On. Type de données de la variable locale représentant le paramètre.

defaultvalue
Obligatoire pour Optional les paramètres. Toute constante ou expression constante qui prend la valeur du type de données du paramètre. Si le type est Object, ou une classe, une interface, un tableau ou une structure, la valeur par défaut ne peut être Nothingque .

Remarques

Les paramètres sont entourés de parenthèses et séparés par des virgules. Un paramètre peut être déclaré avec n’importe quel type de données. Si vous ne spécifiez parametertypepas , la valeur par défaut Objectest .

Lorsque le code appelant appelle la procédure, il transmet un argument à chaque paramètre requis. Pour plus d’informations, consultez Différences entre les paramètres et les arguments.

L’argument que le code appelant passe à chaque paramètre est un pointeur vers un élément sous-jacent dans le code appelant. Si cet élément n’est pas modifiable (constante, littérale, énumération ou expression), il est impossible pour tout code de le modifier. S’il s’agit d’un élément de variable (une variable déclarée, un champ, une propriété, un élément de tableau ou un élément de structure), le code appelant peut le modifier. Pour plus d’informations, consultez Différences entre les arguments modifiables et non modifiables.

Si un élément de variable est passé ByRef, la procédure peut également la modifier. Pour plus d’informations, consultez Différences entre le passage d’un argument par valeur et par référence.

Règles

  • Parenthèses. Si vous spécifiez une liste de paramètres, vous devez l’inclure entre parenthèses. S’il n’existe aucun paramètre, vous pouvez toujours utiliser des parenthèses englobant une liste vide. Cela améliore la lisibilité de votre code en clarifiant que l’élément est une procédure.

  • Paramètres facultatifs. Si vous utilisez le Optional modificateur sur un paramètre, tous les paramètres suivants de la liste doivent également être facultatifs et déclarés à l’aide du Optional modificateur.

    Chaque déclaration de paramètre facultative doit fournir la defaultvalue clause.

    Pour plus d’informations, consultez Paramètres facultatifs.

  • Tableaux de paramètres. Vous devez spécifier ByVal un ParamArray paramètre.

    Vous ne pouvez pas utiliser les deux Optional et ParamArray dans la même liste de paramètres.

    Pour plus d’informations, consultez Les tableaux de paramètres.

  • Mécanisme de passage. Le mécanisme par défaut de chaque argument est ByVal, ce qui signifie que la procédure ne peut pas modifier l’élément de variable sous-jacent. Toutefois, si l’élément est un type de référence, la procédure peut modifier le contenu ou les membres de l’objet sous-jacent, même si elle ne peut pas remplacer ou réaffecter l’objet lui-même.

  • Noms de paramètres. Si le type de données du paramètre est un tableau, suivez parametername immédiatement les parenthèses. Pour plus d’informations sur les noms de paramètres, consultez Noms d’éléments déclarés.

Exemple :

L’exemple suivant montre une Function procédure qui définit deux paramètres.

Public Function HowMany(ByVal ch As Char, ByVal st As String) As Integer
End Function
Dim howManyA As Integer = HowMany("a"c, "How many a's in this string?")

Voir aussi