home *** CD-ROM | disk | FTP | other *** search
- #ifndef __SEZNAM_H
- #define __SEZNAM_H
- #include <iostream.h>
-
- //Globalni typy
- struct TBod { int x,y; };
- struct TBunka { int y,x0,sklon_cit,sklon_jme; };
-
- typedef TBunka T;
- extern void (*VypisPrvku)(T t);
-
- struct prvek { //zaznam
- T d; //typ je zadany jako parametr sablony v < >
- prvek *dalsi,*predchozi; //je to prvek ve obousmerne vazanem seznamu
- };
-
- class Seznam {
- prvek *prvni,*posledni; //ukazatel na prvni a posledni prvek
- public:
- Seznam(); //konstruktor automaticky vola VytvorPrazdnySeznam
- ~Seznam(); //destruktor automaticky vola SmazSeznam
- void VytvorPrazdnySeznam(); //jenom nastavi ukazatele prvni a posledni na 0
- void Pridej(T cislo);
- void Vypis();
- void SmazSeznam(); //odalokuje vsechnu pridelenou pamet, nastavi prvni a posledni na 0
- int Prazdny(); //Je seznam prazdy? vraci 1 pokud ano, jinak 0
- int Jednoprvkovy(); //Obsahuje seznam jen jeden prvek? vraci 1 pokud ano, jinak 0
- prvek *ZjistiPrvni();
- };
-
- #endif
-