120 likes | 223 Views
Saját unitok. Készítette: Rummel Szabolcs Elérhetőség: rsz@mailbox.hu. Programkönyvtárak, Unitok. A turbo pascal eljárásai függvényei programkönyvtárakban, unitokban vannak eltárolva! Lásd: Writeln(); readln() eljárások a CRT unitban vannak!
E N D
Saját unitok Készítette: Rummel Szabolcs Elérhetőség: rsz@mailbox.hu
Programkönyvtárak, Unitok • A turbo pascal eljárásai függvényei programkönyvtárakban, unitokban vannak eltárolva! • Lásd: • Writeln(); readln() eljárások a CRT unitban vannak! • Detectgraph(), initgraph() eljárások a Graph unitban stb.
Saját unitok • Amikor saját eljárásokat függvényeket készítünk, azokat sajnos csak abban a programban használhatjuk! • A saját unit készítésével ez a probléma is áthidalható!
Saját unit felépítése • A programkönyvtár, unit 4 részből épül fel. • Unitnév • Deklarációs rész • Megvalósítási rész • Inicializációs rész (nem kötelező megadni)
Unitnév • A program elején található, itt kap nevet a unit! • Unit elsounit;
Deklarációs rész (Interface) • Itt felsorolom azokat a unitoka, típusokat, konstansokat, változókat, eljárásokat, függvényeket, amiket a unitban használni fogok! • Interface uses crt; var a,b:integer; procedure beker(var a:integer); procedure kiir;
Megvalósítási rész (Implementation) • Ebben a részben kifejtem a saját alprogramjaim működését! • Implementation procedure beker(var a:integer); begin writeln(‘Adj meg egy számot!’); readln(a); end;
Inicializációs rész • Ha van a unitnak olyan része, aminek mindenképpen le kell futnia, akkor azt egy Begin után megadhatom! • Begin • A megadás azonban nem kötelező, így el is hagyható ez a rész. • A unit végét az End. Utasítás mutatja, ez viszont soha nem hagyható el!
Most lássuk a saját unitunkat! • Ez a unit egy számot tud bekérni, és azt a számot tudja kiírni! • Szükséges alprogramok billentyűzetről való bekérés, és egy kiíró utasítás! • A writeln és a readln eljárások a CRT unitban vannak, ezért ezt a unitot a deklarációs részben használnom kell!
Unit elsounit; Interface Uses crt; Var i:integer; Procedure beker(var i:integer); Procedure kiir;
Implementation Procedure beker(var i:integer); Begin writeln(‘Adj meg egy számot!’); readln(i); End; Procedure kiir; Begin writeln(i); End;
Inicializációs rész Mivel nem kell semminek sem lefutnia ezért elhagyom. A unit végét pedig lezárom End.