| Home / Indice sezione | www.icosaedro.it | ![]() |
|
| |||
| Frontespizio Introduzione Caratteristiche Un semplice esempio Moduli Sezione IMPORT Sezione CONST Sezione TYPE Tipo FORWARD Sezione VAR Sezione FUNCTION Sezione BEGIN Stringhe letterali Sottostringhe Commenti Costanti predefinite Variabili predefinite Funzioni predefinite Istruzione di assegnamento Istruzione per la chiamata di funzione Ordine di valutazione degli argomenti attuali Istruzione IF Istruzione SWITCH Istruzione FOR Istruzione WHILE Istruzione REPEAT Istruzione LOOP Istruzione TRY Istruzione RAISE ERROR Istruzione RETURN Espressioni logiche Espressioni intere Espressioni reali Espressioni stringa Espressioni tra tipi strutturati Regole di scope M2 per programmatori C M2 per programmatori Java Rappresentazione dei dati in memoria Keywords Messaggi di errore a runtime Sintassi | Istruzione per la chiamata di funzioneLe funzioni che non hanno un valore di ritorno sono dette procedure. Le procedure si possono richiamare in una istruzione di chiamata di funzione. Esempio: DeleteRecord(db, table_name, rec_number) Questa è la forma prefissa, dove cioè il nome della funzione precede gli argomenti. E' possibile anche la forma postfissa, dove il primo argomento della funzione precede il nome della funzione stessa: db->DeleteRecord(table_name, rec_number) La forma postfissa si può usare solo quando il primo argomento attuale della chiamata di funzione è una variabile, oppure una variabile alla quale sono applicati gli operatori di dereferenziazione (selezione di elemento di ARRAY, selezione di campo di RECORD, sottostringa). La forma postfissa non è possibile quando il primo argomento è una espressione più generale.
Consideriamo un caso più articolato, dove la procedura
La due forme sintattiche prefissa e postfissa sono semanticamente
equivalenti. Come vedremo nella trattazione dei tipi strutturati,
la variabile Per le funzioni che ritornano un valore, le notazioni prefissa e postfissa si possono usare anche nelle espressioni, ma con una restrizione: il primo argomento della funzione deve essere passato per valore.
Il nome della funzione può essere qualificato in entrambe le forme
prefissa e postfissa.
La notazione postfissa offre un piccolo vantaggio rispetto al problema
delle collisioni nello spazio dei nomi delle funzioni: se il nome della
funzione non è qualificato, la funzione richiesta viene ricercata
tra le funzioni esportate dal modulo nel quale è definito il tipo
della variabile prefissa. Nell'esempio precedente, poiché la
variabile | |||
| ||||
| Umberto Salsi | Contatto | Mappa | Home / Indice sezione |