web-dev-qa-db-fra.com

Comment ajouter des paramètres optionnels/valeur par défaut dans VB une fonction?

Comment créer une méthode comportant des paramètres facultatifs dans Visual Basic?

27
Steve Duitsman

Utilisez simplement le mot-clé facultatif et indiquez une valeur par défaut. Les paramètres facultatifs doivent être les derniers paramètres définis pour éviter de créer des fonctions ambiguës.

Sub MyMethod(ByVal Param1 As String, Optional ByVal FlagArgument As Boolean = True)
    If FlagArgument Then
        'Do something special
        Console.WriteLine(Param1)
    End If

End Sub

Appelez ça comme ça:

MyMethod("test1")

Ou comme ceci:

MyMethod("test2", False)
63
Joel Coehoorn

Gardez à l’esprit que l’argument optionnel ne peut avoir lieu avant l’argument requis.

Ce code affichera une erreur:

 Sub ErrMethod (Facultatif ByVal FlagArgument As Boolean = True, ByVal Param1 As String) 
 Si FlagArgument Alors 
 'Faites quelque chose de spécial 
 Console.WriteLine (Param1) 
 End If 
 End Sub 

C'est une erreur commune, pas beaucoup expliquée par le débogueur ....__ Cela a un sens, imaginez l'appel ...

 ErrMethod (???, Param1) 
0
Marcelo Nuñez