Condividi tramite


Elenco dei parametri (Visual Basic)

Specifica i parametri previsti quando viene chiamata una routine. Nel caso di più parametri, è possibile separarli mediante virgole. Di seguito è riportata la sintassi per un parametro.

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

Parti

  • attributelist
    Facoltativo. Elenco di attributi applicabili al parametro. È necessario racchiudere l'Elenco degli attributi (Visual Basic) tra parentesi angolari ("<" e ">").

  • Optional
    Facoltativo. Specifica che il parametro non è obbligatorio quando viene chiamata la routine.

  • ByVal
    Facoltativo. Specifica che alla routine non è consentito sostituire o riassegnare l'elemento variabile sottostante all'argomento corrispondente nel codice chiamante.

  • ByRef
    Facoltativo. Specifica che alla routine è consentito modificare la variabile sottostante nel codice chiamante, analogamente a quanto consentito al codice chiamante stesso.

  • ParamArray
    Facoltativo. Specifica che l'ultimo parametro dell'elenco di parametri è una matrice facoltativa di elementi del tipo di dati specificato. Ciò consente al codice chiamante di passare alla routine un numero arbitrario di argomenti.

  • parametername
    Obbligatoria. Nome della variabile locale che rappresenta il parametro.

  • parametertype
    Obbligatoria se Option Strict è On. Tipo di dati della variabile locale che rappresenta il parametro.

  • defaultvalue
    Obbligatoria per i parametri Optional. Qualsiasi costante o espressione costante che restituisce il tipo di dati del parametro. Se il tipo è Object oppure una classe, un'interfaccia, una matrice o una struttura, il valore predefinito potrà essere solo Nothing.

Note

I parametri sono racchiusi tra parentesi e separati da una virgola. Un parametro può essere dichiarato con qualsiasi tipo di dati. Se non si specifica la parte parametertype, verrà utilizzato il valore predefinito Object.

Quando chiama la routine, il codice chiamante passa un argomento a ciascun parametro obbligatorio. Per ulteriori informazioni, vedere Differenze tra parametri e argomenti (Visual Basic).

L'argomento passato dal codice chiamante a ciascun parametro costituisce un puntatore a un elemento sottostante nel codice chiamante. Se tale elemento è non variabile, ovvero una costante, un valore letterale, un'enumerazione o un'espressione, nessun codice sarà in grado di modificarlo. Se si tratta di un elemento variabile, ovvero una variabile, un campo, una proprietà, un elemento di matrice o un elemento di struttura dichiarato, il codice chiamante potrà modificarlo. Per ulteriori informazioni, vedere Differenze tra argomenti modificabili e non modificabili (Visual Basic).

La routine potrà modificare anche un elemento variabile ByRef passato. Per ulteriori informazioni, vedere Differenze tra il passaggio di un argomento per valore e per riferimento (Visual Basic).

Regole

  • Parentesi. Quando si specifica un elenco di parametri, è necessario racchiuderlo tra parentesi. Se non sono presenti parametri, l'utilizzo delle parentesi per racchiudere un elenco vuoto rende comunque più leggibile il codice in quanto indica che l'elemento è una routine.

  • Parametri facoltativi. Se si utilizza il modificatore Optional su un parametro, anche tutti i parametri successivi dell'elenco devono essere facoltativi e dichiarati utilizzando il modificatore Optional.

    È necessario che in tutte le dichiarazioni di parametri facoltativi sia specificata la clausola defaultvalue.

    Per ulteriori informazioni, vedere Parametri facoltativi (Visual Basic).

  • Matrici di parametri. È necessario specificare ByVal per un parametro ParamArray.

    Non è possibile utilizzare sia Optional che ParamArray nello stesso elenco di parametri.

    Per ulteriori informazioni, vedere Matrici di parametri (Visual Basic) .

  • Meccanismo di passaggio. Il meccanismo predefinito per ciascun argomento è ByVal, che indica che la routine non può modificare l'elemento variabile sottostante. Se l'elemento è un tipo di riferimento, la routine potrà tuttavia modificare il contenuto o i membri dell'oggetto sottostante, anche se non potrà sostituire o riassegnare l'oggetto stesso.

  • Nomi di parametri. Se il tipo di dati del parametro è una matrice, inserire parentesi immediatamente dopo parametername. Per ulteriori informazioni sui nomi dei parametri, vedere Nomi di elementi dichiarati (Visual Basic).

Esempio

Nell'esempio riportato di seguito viene illustrata una routine Function che definisce due parametri.

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?")

Vedere anche

Attività

Procedura: interrompere e combinare istruzioni nel codice (Visual Basic)

Riferimenti

Istruzione Function (Visual Basic)

Istruzione Sub (Visual Basic)

Istruzione Declare

Istruzione Structure

Istruzione Option Strict

Attributi (C# e Visual Basic)

DllImportAttribute