A B++ programozási nyelv

Alprogramok


Az alprogramokat minden esteben külön deklarálni is kell, azt, hogy a metódus függvény vagy eljárás, csak a definíciónál kell feltüntetni. A helyes szintaxis: Deklaráció:
	method mymethod
		paraméterek száma;;
		paraméter1neve;; 		//A név # nélkül írandó.
		paraméter2neve;;
		...
	end method;;
Az eljárások és a függvények mind hívásukban, mind a belőlük való visszatérésben különböznek.

Eljárás

Definíció:

            method void mymethod
            eljárás törzse
            //Hivatkozás a paraméterkre : #paraméterneve
            end method;;
        
A leave utasítás szolgál az eljárásból való kilépésre. Eljárások hívása:
            > :objektum.eljarasnev [paraméter1] [paraméter2] ... ;;
        

Függvény

Definíció:

            method function mymethod
            függvény törzse
            end method;;
        
A return [visszatérési érték] utasítás szolgál a függvényből való visszatérésre. Függvények hívása:
            { :objektum.függvénynév [paraméter1] [paraméter2] ... }
        

Függvényhívást tetszőleges helyen írhatunk, ahol valamilyen kifejezést megadhatunk, így például alprogram paraméterében is.

Lokális változók

A nyelv dokumentációja az alprogramok lokális változóit az osztály ideiglenesen használt attribútumainak nevezi. Ez azt jelenti, hogy ezek a változók, ha nem gondoskodunk törlésükről, akkor az objektum attribútumaként tovább léteznek, és értéküket megtartják. Sajnos ez a lehetőség veszélyforrás is egyben, mert futási idejű hibát okoz egy attribútum újradeklarálása. A lokális változók deklarációja és törlése a következőképpen néz ki:

            declare változónév [kezdőérték] ;;
        
vagy
declare változónév ;;
        
valamint
            clean változónév;;