Az OX programozási nyelv

Alprogramok, modulok

Függvények

Függvény definíciójában fel kell sorolni a nevét és a paraméterei számát. A függvény túlterhetőek paraméterszám alapján.

Példák:

test0(); // paraméter nélküli függvény test1(const a1); // 1 konstans argumentum test3(a1); // ez a függvény csak az deklarációját tartalmazó fájlban használható extern test4(a1); // a függvény a fájlon kívül definiált print(a1, ...); // változó számú argumentum test1(a1); // hiba: ütközés korábbi definícióval


A következő formában lehet hasznáni dll-eket (például C-ben írt függvényeket)

extern "mydll,MyCFunc" test5(a1);


A függvény argumentumok érték szerint adódnak át. Ez azt jelenti, hogy másolat készül az aktuális paraméterről. Int, double, string és mátrix típusok esetében a teljes objektum másolódik, míg a származtatott típusok referencián keresztül érhetők el, és csak a referencia adódik át érték szerint. Ez azt jelenti, hogy ha változtatunk a referencián, változik az aktuális paraméter értéke is a függvények visszatérése után. Ha const-tal jelölünk meg egy argumentumot, akkor azt nem módosíthatja a függvény (ezáltal biztonságosabbá tehető a program, mert fordítási időben lehet ellenőrzést végrehajtani).

Minden függvénynek van visszatérési értéke, de azt nem muszáj felhasználnia a hívónak. Ha egy függvény nem ad visszatérési értéket, akkor az aktuális visszatérési érték meghatározatlan.

A return kulcsszóval lehet visszatérni a hívó blokkba. Használata: return visszatérési_érték; vagy csak return; .

A va_arglist() beépített függvénnyel lehet kezelni változó számú paramétereket.