RETURN: differenze tra le versioni
Vai alla navigazione
Vai alla ricerca
Nessun oggetto della modifica |
Nessun oggetto della modifica |
||
| Riga 1: | Riga 1: | ||
'''Return''' | ==Uso di Return nelle routine per uscire da esse== | ||
'''Return''' determina l'uscita <SPAN Style="text-decoration:underline">immediata</span> e diretta dalla routine. | |||
Esempio: | Esempio: | ||
| Riga 10: | Riga 11: | ||
'''End''' | '''End''' | ||
L'istruzione '''Return''' è anche capace contestualmente di interrompere un ciclo e far uscire dalla routine: | |||
L'istruzione ''Return'' è | |||
'''Public''' Sub Main() | '''Public''' Sub Main() | ||
''' | Dim b As Byte | ||
For b = 1 To 10 | |||
If b == 5 Then '''<FONT color=#B22222>Return</font>''' | |||
Print b | |||
Next | |||
<FONT Color=gray>' '' | |||
Print "Uscito dal solo ciclo FOR." <FONT Color=gray>' ''Ovviamente questa riga non sarà mai raggiunta''</font> | |||
'''End''' | '''End''' | ||
===Differenza fra "Break" e "Return" all'interno di un ciclo=== | |||
===Differenza fra " | L'effetto prodotto dall'istruzione ''Return'' all'interno di un ciclo consiste nella circostanza che l'uscita dalla routine sarà <SPAN Style="text-decoration:underline">immediata e definitiva</span>, ossia non saranno eseguite altre istruzioni eventualmente sottostanti presenti nella routine. | ||
L'effetto prodotto dall'istruzione | <BR>Diversamente l'istruzione ''Break'' fa uscire il processo del codice dal ciclo, ma <SPAN Style="text-decoration:underline">non</span> causa la necessaria, diretta e immediata uscita dalla routine. | ||
<BR>Diversamente l'istruzione | |||
Esempio: | Esempio: | ||
| Riga 58: | Riga 46: | ||
Do | Do | ||
If bo Then <FONT | If bo Then '''<FONT color=#B22222>Return</font>''' | ||
If a == 20 Then <FONT Color=blue>Break</font> | If a == 20 Then <FONT Color=blue>Break</font> | ||
Me.Caption = CStr(a) | Me.Caption = CStr(a) | ||
| Riga 73: | Riga 61: | ||
bo = True | bo = True | ||
'''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) <FONT Color=gray>' ''Istruzione chiamante''</font> | |||
Print rit | |||
'''End''' | |||
'''Private''' Function Funzione(f As Float) As Integer <FONT Color=gray>' ''Funzione chiamata''</font> | |||
Dim i As Integer | |||
i = f * 1000 | |||
<FONT Color=gray>' ''Ritorna all'istruzione chiamante il valore della variabile "i":''</font> | |||
'''<FONT color=#B22222>Return</font>''' i | |||
'''End''' | '''End''' | ||
Versione delle 16:40, 10 gen 2022
Uso di Return nelle routine per uscire da esse
Return determina l'uscita immediata e diretta dalla routine.
Esempio:
Public Procedure Esempio(b As Byte) If b < 100 Then Return Print b End
L'istruzione Return è anche capace contestualmente di interrompere un ciclo e far uscire dalla routine:
Public Sub Main() Dim b As Byte For b = 1 To 10 If b == 5 Then Return Print b Next Print "Uscito dal solo ciclo FOR." ' Ovviamente questa riga non sarà mai raggiunta 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 presenti nella routine.
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
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