[ mojsilo2003 @ 01.03.2004. 11:37 ] @
Pozdrav !
Muka je sledeca:

Napraviti dvostruko spregnutu listu kao sablon(template) klasu
dopunjavanjem datoteke list.cpp koja sadrzi deklaraciju sablon klase list.
list.cpp izgleda ovako:
Code:

class list_link
 { list_link *left;
   list_link *right;

   list_link(const list_link&);
   list_link& operator=(const list_link&);
  public:
   list_link();
   void initiate();
   void insert(list_link *link);
   list_link *extract();
   bool not_empty() const;
   bool empty() const;
  friend class tag_list_link;
 };

list_link::list_link()
 { right = this;
   left = this; };

void list_link::initiate()
 { right = this;
   left = this; };

void list_link::insert(list_link *link)
 { link->left = left;
   link->right = this;
   left->right = link;
   left = link; };

list_link *list_link::extract()
 { list_link *p = right;
   right->right->left = this;
   right = right->right;
   return p; };

bool list_link::not_empty() const
 { return (this != right); };

bool list_link::empty() const
 { return (this == right); };



Sa template-ima se nisam puno susrecao(tu i tamo neke jednostavne sam koristio) imam problem kako izvesti trazeni zadatak pored gomile drugih obaveza za veoma kratko vreme .Problem je i u tome sto datu datoteku list.cpp nisam bas najbolje ni razumeo. Znam da napravim sam svoju genericku dvostruko spregnutu listu ali sa ovom imam malih problema.
Ako neko ima volje i vremena malo da pogleda i da mi pomogne molio bih ga da to i ucini.
Unapred hvala!

p.s.
ako nisam napomenuo HELP je potreban hitno!!!
[ leka @ 01.03.2004. 11:52 ] @
Da li list.cpp izgleda BAS tako kako si dao? Nema nikakvih #include
direktiva?
[ NastyBoy @ 01.03.2004. 12:39 ] @
... a uz to ima i bagova, i veoma nezgrapno izgleda!
U svakom sluchaju, shto reche leka, daj bar da vidimo tu tag_list_link klasu
[ DeepInBrain @ 19.03.2004. 17:41 ] @
Sta je template?
- nedovrsena klasa.

Ne znam sa cime radis, ali mi na faxu radimo sa Colibry.
Koliko ja znam C/C++ nema tip bool, a ti ga ovde koristis.
Znaci u pitanju je verovatno neki dodatak.
bez include<...> ovo ne moze da radi.

CODE --------------------------------------
#include <colibry.h>
#include <colib_io.h>
#include <conio.h>
--------------------------------------------

Uzgred, ova klasa, koliko vidim ne radi skoro nista korisno.
(citaj: nema korisnu informaciju)
i kao takav sluzi samo za linkovanje, tj. povezivanje
elemenata liste i koristi se samo za nasledjivanje :)
Postavi test, pa cemo videti...