Tvorba vlastných unitov

Unity nám slúžia na zadefinovanie Pri stavbe unitov by programátor mal zabezpečiť aby nový unit nevyžadoval objekty, ktoré sám nemá popísané.
dátový a kódový priestor
Unit si vytvára svoj DS tú sú uložené dátové objekty definované v časti interface a implementation
CS tú je uložený kód - príkazy. Takto možno vytvárať programy, ktorých celkový kód presahuje 64kB
SS zásobník unit nevytvára - keď program zavolá podprogram z unitu všetky lokálne premenné a sampzrejme aj návratovú adresu si zapíše do svojho zásobníka. (teda podľa možnosti sa v unite vyhýbame možnosti definovať premenné v podprogramoch - predídeme pretekaniu zásobníka)
štruktúra
unit má nasledovnú štruktúru:
hlavička
syntax: unit názov; V hlavičke popíšeme meno unitu - názov musí byť jedinečný, zhodný s menom súboru v ktorom je unit zapísaný
(napr. súbor matika.pas bude mať v prvom riadku unit matika)
slovo interface je povinné
viditeľná časť (interface)
syntax:
interface
Type
deklarácia dátových štruktúr - typov
Var
deklarácia premenných
Const
deklarácia konštánt
hlavičky procedúr a funkcií
procedure podpr1(...);
V tejto časti popíšeme objekty (podprogramy, dáta, typy, konštanty), ktoré chceme aby boli viditelné z programu, ktorý si túto knižnicu pripne. Podprogramy tu majú len hlavičky - deklaračné a príkazové časti sa popisujú v časti implementation.
Ak v týchto deklaráciách používame iné knižnice treba na začiatok tejto sekcie (teda hneď za riadok interface) vložiť
uses knižnica
neviditeľná časť (interface)
syntax:
impementation
Type
deklarácia dátových štruktúr - typov
Var
deklarácia premenných
Const
deklarácia konštánt
hlavičky procedúr a funkcií
procedure podpr1(...);
V tejto časti popíšeme objekty (podprogramy, dáta, typy, konštanty), ktoré chceme aby boli neviditelné z programu, ktorý si túto knižnicu pripne. Tu sa nachádzajú aj podprogramy ktoré majú hlavičky v časti interface.
V imlementačnej časti tiež možno uviesť
uses knižnica;
inicializičná časť
je nepovinná. Ak sa v nenachádza v unite musí je "zastúpiť kľúčové slovo end.
syntax:
begin
... príkazy ...
end.
V príkazoch možno používať objekty zadefinované v časti interface a implementation. Ak prípíname k programu viaceré unity s inicializačnými časťami poradie vykonávania je dané poradím v príkaze uses.