7.1 – Funzioni personali

Le funzioni personali (o UDF, “User-defined function”) permettono di definire una serie a piacere di istruzioni richiamabili poi con un solo comando. In tal modo non è necessario ripetere righe e righe di codice per eseguire la stessa operazione in punti diversi dello script. Ad ogni funzione è associato un nome e, tramite questo, può essere richiamata come qualsiasi altra funzione già vista (MsgBox, ConsoleWrite, FileRead, ecc.).

Se necessario, può essere configurata in modo tale da accettare dei parametri in ingresso (da specificare dopo il nome della funzione) e/o restituirne uno in uscita (attraverso il comando return).

Diversamente da altri linguaggi, come il C, non è necessario definire una funzione ad inizio file attraverso l’utilizzo di un prototipo, ma è possibile definirla anche in un punto successivo a quello in cui viene chiamata.

Riprendendo l’esempio del Bubble Sort, illustrato nell’articolo sugli array, possiamo ora definire una funzione indipendente per ordinare in ordine crescente un vettore:

 

7.2 – Librerie esterne

E’ inoltre possibile inserire le funzioni personali in un file esterno e richiamarlo a piacere all’interno dei propri progetti. In questo modo, è possibile separare gli script eccessivamente lunghi in più file o, se si desidera, fornire ad altri determinate funzioni senza dover condividere l’intero progetto.

Per fare ciò, è sufficiente definire le proprie funzioni in un nuovo file, da salvare poi come un normalissimo script di AutoIt (quindi estensione .au3), e includerlo ad inizio progetto tramite il comando:

Se la libreria esterna non è situata nella stessa cartella del file che la desidera includere, ma, per esempio, in una sottocartella chiamata “Librerie”, è necessario precisarne l’ubicazione:

Certe funzioni viste negli articoli precedenti, come per esempio _FileReadLine o _ArrayDisplay, sono definite in librerie già incluse nel pacchetto di AutoIt (_FileReadLine in File.au3, _ArrayDisplay in Array.au3). Queste sono situate nella cartella “Include”, situata nel percorso di installazione (tipicamente “C:\Program Files\AutoIt”), e per utilizzarle è necessario usare la seguente sintassi: