ChucK

Függvények

Függvény írása

Függvényeket a C++-hoz hasonlóan lehet deklarálni, azzal a különbséggel, hogy a fun vagy function kulcsszavaknak meg kell előzniük a deklarációt. A deklaráció és definíció szétválasztására nincs mód.

// 'funk' függvény definiálása fun void funk( int arg ) { // függvény törzse } // 'addOne' függvény definiálása fun int addOne(int x) { // eredmény return x + 1; }

Függvény hívása

Függvény hívása a C++-szal analóg módon történik.

// 'hey' definiálása fun int hey( int a, int b ) { return a + b; } // függvény hívása, visszatérési érték eltárolása hey( 1, 2 ) => int result;

Függvény hívására a ChucK operátor is használható.

// 'hey' hívása ( 1, 2 ) => hey => int result; // ugyanaz, mint fent hey( 1, 2 ) => int result; // több függvény hívása egymás után ( 10, 100 ) => Std.fabs => Std.mtof => float foo; // ugyanaz, mint fent Std.mtof( Std.fabs( 10, 100 ) ) => float foo;

Túlterhelés

Függvény túlterhelése lehetővé teszi, hogy különböző paraméterű függvényeket deklaráljunk ugyanazzal a névvel. A függvények visszatérési értékének meg kell egyeznie.

// funk( int ) fun int add(int x) { return x + x; } // funk( int, int ) fun int add(int x, int y) { return x + y; } // a fordító kiválasztja a megfelelő függvényt add( 1 ) => int foo; add( 1, 2 ) => int bar;