RETURN: differenze tra le versioni

Da Gambas-it.org - Wikipedia.
Vai alla navigazione Vai alla ricerca
(Creata pagina con ''''Return''': determina l'uscita dalla routine. Esempio: '''Public''' Sub Button1_Click() Dim a As Byte For a = 1 To 100 If a = 55 Then Print "a = "; a ''...')
 
Nessun oggetto della modifica
 
(8 versioni intermedie di uno stesso utente non sono mostrate)
Riga 1: Riga 1:
'''Return''': determina l'uscita dalla routine.
==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:
  '''Public''' Sub Button1_Click()
  Public Procedure Esempio(b As Byte)
   
   
Dim a As Byte
  If b < 100 Then <FONT color=red>'''Return'''</font>
   
   
  For a = 1 To 100
  Print b
  If a = 55 Then
 
    Print "a = "; a
End
    '''<FONT color=#B22222>Return</font>'''
 
  Endif
L'istruzione '''Return''' è anche capace contestualmente di interrompere un ciclo e far uscire dalla routine:
  Next
Public Sub Main()
  Dim b As Byte
   
  For b = 1 To 10
    If b == 5 Then <FONT color=red>'''Return'''</font>
    Print b
  Next
  Print "Uscito dal solo ciclo FOR."  <FONT Color=gray>' ''Ovviamente questa riga non sarà mai raggiunta''</font>
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 <SPAN Style="text-decoration:underline">dalla routine</span> sarà <SPAN Style="text-decoration:underline">immediata e definitiva</span>, ossia non saranno eseguite altre istruzioni eventualmente sottostanti presenti nella routine.
<BR>Diversamente l'istruzione ''Break'' fa uscire il processo del codice soltanto e semplicemente dal ciclo, ma <SPAN Style="text-decoration:underline">non</span> 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 b As Byte
 
  Do
    If bo Then <FONT color=red>'''Return'''</font>
    If b == 20 Then <FONT Color=blue>Break</font>
    Me.Title = CStr(b)
    Wait 0.3
    Inc b
  Loop
 
  Me.Title = "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'' è utilizzato 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=red>'''Return'''</font> i
   
   
  '''End'''
  End

Versione attuale delle 17:09, 6 lug 2024

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 soltanto e semplicemente 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 b As Byte
 
 Do
   If bo Then Return
   If b == 20 Then Break
   Me.Title = CStr(b)
   Wait 0.3
   Inc b
 Loop
 
 Me.Title = "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 è utilizzato 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