Differenze tra le versioni di "Differenza fra Sub, Procedure e Function"

Da Gambas-it.org - Wikipedia.
(Creata pagina con "Spesso i programmatori principianti del linguaggio Gambas si pongono la legittima domanda se vi siano delle differenze fra l'uso delle parole-chiavi '''SUB''', '''PROCEDURE'''...")
 
Riga 1: Riga 1:
Spesso i programmatori principianti del linguaggio Gambas si pongono la legittima domanda se vi siano delle differenze fra l'uso delle parole-chiavi '''SUB''', '''PROCEDURE''' e '''FUNCTION'''.
+
Spesso i programmatori principianti del linguaggio Gambas si pongono la legittima domanda se vi siano delle differenze fra l'uso delle parole-chiave '''SUB''', '''PROCEDURE''' e '''FUNCTION'''.
  
 
Anche se non è una regola rigida che possa dare errore, in Gambas una Funzione ''restituisce'' sempre un valore alla Funzione ''chiamante''; pertanto si ''preferisce'' definirla con la parola chiave '''FUNCTION''' (preceduta dalla parola chiave ''Public'' o ''Private'' a seconda ovviamente delle necessità), rispetto ad una routine che ''non'' restituisce alcun valore, e che - in tal caso - verrà definita con la parola chiave '''SUB''' o '''PROCEDURE''' (preceduta dalla parola chiave ''Public'' o ''Private'' a seconda ovviamente delle necessità).
 
Anche se non è una regola rigida che possa dare errore, in Gambas una Funzione ''restituisce'' sempre un valore alla Funzione ''chiamante''; pertanto si ''preferisce'' definirla con la parola chiave '''FUNCTION''' (preceduta dalla parola chiave ''Public'' o ''Private'' a seconda ovviamente delle necessità), rispetto ad una routine che ''non'' restituisce alcun valore, e che - in tal caso - verrà definita con la parola chiave '''SUB''' o '''PROCEDURE''' (preceduta dalla parola chiave ''Public'' o ''Private'' a seconda ovviamente delle necessità).

Versione delle 18:26, 8 nov 2022

Spesso i programmatori principianti del linguaggio Gambas si pongono la legittima domanda se vi siano delle differenze fra l'uso delle parole-chiave SUB, PROCEDURE e FUNCTION.

Anche se non è una regola rigida che possa dare errore, in Gambas una Funzione restituisce sempre un valore alla Funzione chiamante; pertanto si preferisce definirla con la parola chiave FUNCTION (preceduta dalla parola chiave Public o Private a seconda ovviamente delle necessità), rispetto ad una routine che non restituisce alcun valore, e che - in tal caso - verrà definita con la parola chiave SUB o PROCEDURE (preceduta dalla parola chiave Public o Private a seconda ovviamente delle necessità).

Ricapitolando:
- se la subroutine chiamata restituisce un valore alla Funzione chiamante, allora la subroutine chiamata sarà considerata una Funzione in senso stretto, e verrà definita con la parola chiave Function:

Public/Private Function Nome_Funzione(parametro As tipo_valore, ......) As tipo_valore

  .....
  .....
  
  Return valore
  
End

- se invece la subroutine chiamata non restituisce un valore alla Funzione chiamante, allora la subroutine chiamata sarà considerata una mera Procedura, e si preferisce definirla con la parola chiave Procedure o con Sub:

Public/Private Procedure Nome_Procedura(parametro As tipo_valore, ......)

  .....
  .....
  
End