#include class node { public: node(); ~node(); node * addTail(node * an); node * addChTail(node * an); virtual void Print()=0; int settab(int at) { tab = at; return 0; } public: node * pnext; node * pfchild; protected: int tab; }; class node_a:public node{ public: void Print(); }; class node_b:public node{ public: void Print(); }; class html_doc:public node{ public: html_doc(){ settab(0);}; ~html_doc() { if(pnext) delete pnext; if(pfchild) delete pfchild; } void Print(){ cout << "\n" << "\n" << "\n"; if(pfchild)pfchild->Print(); cout << "\n\n"; } }; class html_item0:public node{ public: html_item0(){text = 0;}; html_item0(char *at); ~html_item0(); //zwalnia pamiec char *settext(char*); //ustawia pamiec void Print(); private: char *text; };