9. Típusok és konstansok deklarálása

Típusdeklaráció

Az egyes típusoknak nevet lehet adni a

deklarációs utasítással. A következõ példából látható, hogy ez egyszerûsítheti a deklarációs részt.

TYPE tomb=array[1..100] of integer;
VAR a,b:tomb;

A TYPE másik fontos szerepe az, hogy a Pascal csak akkor ismer el azonosnak két típust, ha ugyanaz a nevük. A fenti deklaráció után használhatjuk a programban az a:=b utasítást; míg ha a deklaráció

VAR a,b:array[1..100] of integer;

lenne, a Pascal nem ismerné fel az azonos típusokat, és egy ciklussal kellene az egyik tömb minden elemét a másikba rakni. Példa összetettebb deklarációra:

TYPE Ember=record
              nev:string;
              szul:integer;
              suly:real;
           end;
     Tomb=array[1..100] of Ember;
VAR e:Ember;
    adatok:Tomb;
    i:integer;
BEGIN
 i:=0;
 Repeat
    write(i+1,'. személy neve (*=kilépés): '); readln(e.nev);
    if e.nev<>'*' then begin
       write('született: '); readln(e.szul);
       write('súlya: '); readln(e.suly);
       i:=i+1;
       adatok[i]:=e;
    end;
 Until (e.nev='*') or (i=100)
END.

A program feltölti az adat nevû tömböt, a ciklusból akkor lép ki, ha az utolsó személyt is felvittük, vagy névre *-ot írtunk be. Rekordok használata nélkül a névre, súlyra és születési évre három külön tömböt kellett volna használni. Az adatok[i]:=e értékadás csak azért volt lehetséges, mert mind az e változó, mind az adatok tömb elemei ember típusúak.

Konstansdeklaráció

A programban deklarálhatunk konstansokat is a

deklarációs utasítással. Ha a fordító a továbbiakban ezzel a konstanssal találkozik, már a fordítás alatt az értéket írja a helyére. A konstansra a deklarációs részben is hivatkozhatunk. Ha tehát a fenti program deklarációs részét kiegészítjük a

CONST max=100;

utasítással, majd következetesen a 100 helyébe mindenhová (a Tomb típus deklarációjánál is) max-ot írunk, a program mûködésében semmiféle változás nem következik be.

Mi az értelme konstansok használatának? Ha rájövünk, hogy az adat tömb maximális méretére célszerûbb lenne 200-at választani, a programban meg kell keresnünk és 200-ra javítanunk az összes 100-at. Ha viszont konstanst használunk, elég csak a deklarációt átírni CONST max=200-ra. Továbbá, minden olyan helyen, ahol a max azonosítót látjuk a programban, tudjuk, hogy az az adat tömb maximális méretét jelenti, ahol pedig továbbra is 100- at látunk, annak nincs köze a tömbmérethez. Tehát a konstansdeklarációkkal áttekinthetõbbé és könnyebben átírhatóvá válik a programunk. Célszerû a programban minden hasonló állandó értéket konstansként deklarálni.

Következõ fejezet
Elõzõ fejezet
Tartalomjegyzék
Honlap