Crearea functiilor

Crearea functiilor nu este un moft al programatorilor ci vine din necesitatea de a simplifica cat de mult codul sursa. Daca aveti anumite structuri care se repeta, ele pot fi organizate sub forma unei functii. Prototipul unei functiei este urmatorul:

Orice functie trebuie sa inceapa cu cuvantul cheie Func, urmat de numele functiei. O functie poata sa aiba sau nu parametri si poate sa returneze sau nu un rezultat explicit. Daca un parametru al functiei este specificat ca fiind Const, acesta nu poate fi modificat in timpul executiei functiei iar daca un parametrul este precedat de cuvantul cheie ByRef atunci va fi pasat functiei ca o referinta a variabilei originale. O variabila se paseaza unei functii prin referinta cand contine un volum de date semnificativ (de exemplu un vector cu multe elemente) pentru a evita scaderile de performanta cauzate de copiere datelor. Daca se folosesc ambele cuvinte cheie Const si ByRef, ordinea lor nu este importanta.

Se poate observa ca o functie poate avea un numar variabil de parametri, incepand de la o functie fara parametri pana la functii cu parametri optionali. In cazul parametrilor optionali trebuie specificata o valoare default. Pentru a obtine numarul de parametri pe care o functie ii are, puteti folosi macro-ul @NumParams.

O functie poata sa returneze un rezultat explicit, egal cu zero, folosind cuvantul cheie Return, sau acesta poate fi urmat de rezultatul explicit al functiei. De asemenea functia poate sa nu returneze niciun rezultat iar cuvantul cheie Return va lipsi din prototipul functiei. Functia se termina cu cuvantul cheie EndFunc.

 

Nota: o functie nu poata sa contina definitia unei alte functii.

 

Un exemplu de functie:

Nota: daca nu se doreste scrierea unei linii foarte lungi se poate folosi & _ pentru a trece pe urmatoarea linie si totul va fi interpretat ca o singura linie.

 

Vor exista cazuri in care parametrii pasati functiei sa nu fie cei pe care programatorul, care a scris functia, sa ii fi asteptat. In aceste cazuri se poate folosi functia SetEerror pentru a specifica un indicator de eroare la iesirea din functie.

Primul parametru al functiei SetError este codul erorii (se seteaza macro-ul @error), al doilea parametru este valoarea pentru macro-ul @extended si al treilea reprezinta valoarea returnata.

 


* Pentru orice intrebari sau nelamuriri legate de curs sau limbajul AutoIt accesati sectiunea AutoIt a forumului SkullBox sau platforma de suport tehnic NetHelp.