Differenza tra le funzioni e subroutine in Visual Basic

March 15

Differenza tra le funzioni e subroutine in Visual Basic


Se avete intenzione di sviluppare un'applicazione Visual Basic, una delle prime cose che dovete sapere è la differenza tra le funzioni e subroutine, noto anche come le procedure di sub. Si può pensare di subroutine e funzioni come programmi in miniatura. A differenza delle variabili, subroutine e funzioni non detengono alcun dato; invece sono titolari di codice VB. Se si desidera restituire i dati, quindi utilizzare una funzione - in caso contrario, utilizzare una subroutine. È possibile chiamare funzioni da subroutine e viceversa.

Definizione

Una subroutine è composta da una serie di istruzioni di Visual Basic, racchiusi dalla "Sub" e le dichiarazioni "End Sub". Una procedura funzione è anche composto da una serie di istruzioni di Visual Basic, ma deve essere racchiuso dal "Function" e le dichiarazioni "End Function". Tutto il codice eseguibile deve essere all'interno sia una subroutine e una procedura funzione. Ciascuno di essi può essere definita in moduli, classi e le strutture.

Dichiarazione

Si dichiara una subroutine in un modo simile a come si dovrebbe dichiarare una variabile, specificando il nome del parametro e il tipo di dati. È possibile specificare il meccanismo di passaggio di parametri come ad esempio "ByVal" o "ByRef". Ciascun parametro è trattata come una variabile locale alla subroutine, il che significa che la durata del parametro è la stessa di quella della procedura. In una funzione, è possibile dichiarare il tipo di dati del valore restituisce come "Integer" o "doppio". Se non si specifica il "returnType", la funzione restituisce un tipo di dati "Oggetto".

dati ritornando

In VB, è possibile passare un argomento di una procedura (subroutine o funzione) per valore o per riferimento specificando il "ByVal" o parole chiave "ByRef". Per default una subroutine e una funzione trattano i loro argomenti per valore, il che significa che il procedimento non può modificare il contenuto del componente variabile nel codice chiamante. Una funzione restituirà un valore assegnando il valore al nome della funzione, o includere nella dichiarazione "Return". Una subroutine normalmente non restituisce un valore, ma è possibile definire un argomento come "ByRef" per restituire un valore come parametro.

Esempio

Quanto segue è un esempio di una subroutine:

tellOperator secondaria (compito ByVal come stringa)

Dim stamp As Date

timbro = timeofday ()

MsgBox ( "Avvio" e compito e "a" & CStr (timbro))

End Sub

Quanto segue è un esempio di una funzione:

Funzione myFunction (ByVal j As Integer) As Double

Return 3.87 * j

End Function