Volitelné (Visual Basic)
Určuje, že při volání procedury lze vynechat argumentu procedury.
Poznámky
Pro každý volitelný parametr je nutné zadat jako výchozí hodnotu parametru konstantní výraz.Pokud je výraz vyhodnocen jako nic, výchozí hodnota typ hodnoty dat se používá jako výchozí hodnotu parametru.
Pokud parametr seznam obsahuje volitelný parametr, musí být každý parametr, který následuje také volitelné.
Optional Modifikátor lze v těchto kontextech:
[!POZNÁMKA]
Při volání procedury s nebo bez volitelných parametrů, můžete předat argumenty název nebo umístění.Další informace naleznete v tématu Předávání argumentů podle umístění a název (Visual Basic).
[!POZNÁMKA]
Můžete také definovat postup s nepovinnými parametry pomocí přetížení.Pokud máte jeden volitelný parametr, můžete definovat dvě verze přetížené postupem, který přijímá parametr a jeden, který není.Další informace naleznete v tématu Řízení přetížení (Visual Basic).
Příklad
Následující příklad definuje postup, který má volitelný parametr.
Public Function FindMatches(ByRef values As List(Of String),
ByVal searchString As String,
Optional ByVal matchCase As Boolean = False) As List(Of String)
Dim results As IEnumerable(Of String)
If matchCase Then
results = From v In values
Where v.Contains(searchString)
Else
results = From v In values
Where UCase(v).Contains(UCase(searchString))
End If
Return results.ToList()
End Function
Následující příklad demonstruje volání procedury s argumenty předané podle umístění a argumenty předané podle názvu.Postup má dvě volitelné parametry.
Private Sub TestParameters()
' Call the procedure with its arguments passed by position,
studentInfo("Mary", 19, #9/21/1981#)
' Omit one optional argument by holding its place with a comma.
studentInfo("Mary", , #9/21/1981#)
' Call the procedure with its arguments passed by name.
studentInfo(age:=19, birth:=#9/21/1981#, name:="Mary")
' Supply an argument by position and an argument by name.
studentInfo("Mary", birth:=#9/21/1981#)
End Sub
Private Sub studentInfo(ByVal name As String,
Optional ByVal age As Short = 0,
Optional ByVal birth As Date = #1/1/2000#)
Console.WriteLine("name: " & name)
Console.WriteLine("age: " & age)
Console.WriteLine("birth date: " & birth)
Console.WriteLine()
End Sub
Viz také
Referenční dokumentace
Seznam parametrů (Visual Basic)
Koncepty
Volitelné parametry (Visual Basic)