Differenze tra le versioni di "RETURN"
Da Gambas-it.org - Wikipedia.
Riga 4: | Riga 4: | ||
'''Public''' Sub Button1_Click() | '''Public''' Sub Button1_Click() | ||
− | + | Dim b As Byte | |
− | + | ||
− | + | For b = 1 To 100 | |
− | + | If b = 55 Then | |
− | + | Print "b = "; b | |
− | + | '''<FONT color=#B22222>Return</font>''' | |
− | + | Endif | |
− | + | Next | |
− | + | ||
'''End''' | '''End''' | ||
Versione delle 00:10, 12 ago 2020
Return: determina l'uscita immediata e diretta dalla routine.
Esempio:
Public Sub Button1_Click() Dim b As Byte For b = 1 To 100 If b = 55 Then Print "b = "; b Return Endif Next End
Uso di Return nelle funzioni per ritornare un valore
L'istruzione Return è indispensabile all'interno delle funzioni, scritte dal programmatore, per ritornare un valore alla funzione chiamante.
Esempio:
Public Sub Main() dim rit As Integer rit = Funzione(21081.969) ' Istruzione chiamante Print rit End Private Function Funzione(f As Float) As Integer ' Funzione chiamata Dim i As Integer i = f * 1000 ' Ritorna all'istruzione chiamante il valore della variabile "i": Return i End
Differenza fra "Break" e "Return" all'interno di un ciclo
L'effetto prodotto dall'istruzione "Return" all'interno di un ciclo consiste nella circostanza che l'uscita dalla routine sarà immediata e definitiva, ossia non saranno eseguite altre istruzioni eventualmente sottostanti.
Diversamente l'istruzione "Break" fa uscire il processo del codice dal ciclo, ma non causa la necessaria, diretta e immediata uscita dalla routine.
Esempio:
bo As Boolean Public Sub Form_Open() Me.Show Ciclo() End Private Procedure Ciclo() Dim a As Byte Do If bo Then Return If a == 20 Then Break Me.Caption = CStr(a) Wait 0.3 Inc a Loop Me.Caption = "Istruzione successiva al ciclo 'For...Next'" End Public Sub Button1_Click() bo = True End