Parametri e argomenti delle routine (Visual Basic)
Nella maggior parte dei casi, una routine richiede alcune informazioni sulle circostanze in cui è stato chiamata. Una routine che esegue attività ripetute o condivise utilizza informazioni diverse per ogni chiamata. Queste informazioni sono costituite da variabili, costanti ed espressioni passate alla routine quando viene chiamata.
Un parametro rappresenta un valore previsto dalla routine quando viene chiamato. La dichiarazione della routine definisce i relativi parametri.
È possibile definire una routine senza parametri, un parametro o più di uno. La parte della definizione della routine che specifica i parametri è denominata elenco dei parametri.
Un argomento rappresenta il valore fornito a un parametro di routine quando si chiama la routine. Il codice chiamante fornisce gli argomenti quando chiama la routine. La parte della chiamata di routine che specifica gli argomenti viene chiamata elenco degli argomenti.
La figura seguente mostra il codice che chiama la routine safeSquareRoot
da due posizioni diverse. La prima chiamata passa il valore della variabile x
(4.0) al parametro number
e il valore restituito in root
(2.0) viene assegnato alla variabile y
. La seconda chiamata passa il valore letterale 9.0 a number
e assegna il valore restituito (3.0) alla variabile z
.
Per altre informazioni, vedere Differenze tra parametri e argomenti.
Tipo di dati dei parametri
Definire un tipo di dati per un parametro usando la clausola As
nella relativa dichiarazione. Ad esempio, la funzione seguente accetta una stringa e un numero intero.
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
Se l'opzione di controllo del tipo (istruzione Option Strict) è Off
, la As
clausola è facoltativa, ad eccezione del fatto che se un parametro lo usa, tutti i parametri devono usarlo. Se il controllo del tipo è On
, la clausola As
è necessaria per tutti i parametri della routine.
Se il codice chiamante prevede di fornire un argomento con un tipo di dati diverso da quello del parametro corrispondente, ad esempio Byte
a un parametro String
, deve eseguire una delle operazioni seguenti:
Fornire solo argomenti con tipi di dati che supportano la conversione al tipo di dati del parametro.
Impostare
Option Strict Off
per consentire conversioni implicite.Usare una parola chiave di conversione per convertire il tipo di dati in modo esplicito.
Parametri di tipo
Una routine generica definisce anche uno o più parametri di tipo oltre ai parametri normali. Una routine generica consente al codice chiamante di passare tipi di dati diversi ogni volta che chiama la routine, in modo da adattare i tipi di dati ai requisiti di ogni singola chiamata. Vedere Generic Procedures in Visual Basic.