Objekty - opakování

Implementovali jsme zásobník. Připravený okomentovaný polotovar je zde.

Přitom jsme v praxi použili následující:

  1. -objekt (type Tstack = object)
  2. -atribut (top: PBox;)
  3. -metody (procedure push(x: integer); a function pop: integer;)
  4. -konstruktor (constructor init;)
  5. -destruktor (destructor destroy;)

Moduly

Ukázali jsme si, jak se vytvoří a použije jednoduchý programový modul.

Moduly jsou podobné programům - poznají se podle toho, že jsou uvedeny klíčovým slovem unit. V jednom modulu by měly být kusy kódu, které spolu logicky nějak souvisí.

Každý programový modul (např. unit stack;) je rozdělen na dvě hlavní části:

  1. - vše, co je uvedeno v první části zvané rozhraní (začíná slovem interface) budeme moct používat v programu, který modul používá (např. takto: uses stack;)
  2. - v druhé části je implementace všech procedur, funkcí a metod (procedury a funkce obsažené v objektech). Tato část začíná slovem implementation

Modul může ještě obsahovat inicializační část. Pokud není co inicializovat, můžeme ji nechat prázdnou.

Detaily k syntaxi je možné nalézt například v referenční příručce (kapitola 16.2).

Hledání cyklů v grafu

V CodExu je zadána nová úloha. Cykly v grafu snadno odhalíme pomocí DFS, takže pokud máte funkční zásobník ze cvičení, můžete ho s výhodou použít.

Jak jsem poprvé použil modul

Kdysi jsem naprogramoval jednoduchého hada, který využívá modul Crt.

Kód může v mnoha ohledech posloužit jako odstrašující příklad toho, jak by se programovat nemělo. Dejte mi vědět, kdyby se vám ho podařilo přeložit a spustit.