Record/hu
Deutsch · English · Español · Français · Magyar · Polski · Português · Suomi · Русский
Rekord
A rekord (record) típus egy magasan szervezett adatszerkezet Pascal-ban.
Míg az egyszerű adatszerkezetek, mint a tömb, vagy a set, egyforma típusú elemekből állnak, addig a rekord többfajta elemből állhat, és nagy bonyolultságú lehet. A rekord egyes részeit mezőknek nevezzük.
Egy rekordnak tekinthető például a való életben a telefonkönyv névjegyzékének egy eleme. Ebben az esetben egy adott rekord egy ember nevét, címét, telefonszámát tartalmazza. Már itt jól látható, hogy különböző típusú mezők vannak felhasználva: a név String típusú, a telefonszám Integer típusú, a cím pedig lehet String vagy szintén rekord típusú - ebben az esetben a címet tovább finomíthatjuk irányítószám, utca, házszám, lépcsőház, stb. formában.
Lássuk a telefonkönyves példánkat a gyakorlatban:
type
TCim = record
iranyitoSzam, hazSzam: Integer; { Irányító- és házszám mezők. }
varos, utca: String; { Város- és utcanév mezők. }
end;
TSzemely = record
csaladNev, keresztNev : String; { A személy családnevét, és keresztnevét tartalmazó mezők. }
cim: TCim; { A személy címét tartalmazó mező - szintén rekord. }
telefonSzam: Integer; { A telefonszámot tartalmazó mező. }
end;Minden egyes mezőt a rekordnév utáni pont operátorral érhetünk el:
a.csaladNev := 'Kovacs';
a.keresztNev := 'Istvan';
a.telefonSzam := 789534;A pont operátor használatával mélyebb szintekre is eljuthatunk a rekordban, például a cím megadásánál:
a.cim.iranyitoSzam := 1234;
a.cim.varos := 'Peldavaros';
a.cim.utca := 'Kossuth Lajos utca';
a.cim.hazSzam := 56;Egy másik módszer, amely leegyszerűsíti a mezők értékadását, a with szerkezet használata:
with a do
begin
csaladNev := 'Kovacs';
keresztNev := 'Istvan';
telefonSzam := 789534;
end;A rekordot a program egy önálló entitásként kezeli, ezért a rekordok másolhatók - feltéve, hogy a két változó azonos típusú:
var
a, b: TSzemely;
begin
{ értékmegadások az 'a' rekordhoz }
...
...
b := a;
end;A rekordokat széleskörűen használják a Pascal-ban logikailag összefüggő adatok csoportosítására.
From the Free Pascal wiki, page "Record/hu", as it stood on 2020-02-25 after a change by Trev, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.