Курсовая работа: Об’єктно-орієнтована програма обліку продуктового магазину

};

protected:

Iterator the_first() {return Iterator(list->next,this);}

Iterator the_last() {return Iterator(list->prev,this);}

Iterator record();

virtual Data* create(){return new Data;};

public: Table();

virtual ~Table();

void clear();// очистити таблицю

void save(FILE *f);// зберегти таблицю

void zvit(FILE *f);

void load(FILE *f);// завантажити таблицю

};

template<class MyData> class MyTable : public Table

{

public:

class Iterator : public Table::Iterator

{

friend class MyTable;

Iterator(const Table::Iterator &p):Table::Iterator(p){}

public: Iterator(){}

MyData& operator*() {return *(MyData*)data();}// доступ до полів MyData

MyData* operator->() {return (MyData*)data();}// доступ до полів MyData

Iterator next() {return Iterator(the_next());}// повертає ітератор на наступний елемент

Iterator prev() {return Iterator(the_prev());}// повертає ітератор на попередній елемент

};

protected:

virtual Data* create(){return new MyData;}

public: Iterator record() {return Iterator(Table::record());}// створює новий запис і повертає ітератор на нього

К-во Просмотров: 634
Бесплатно скачать Курсовая работа: Об’єктно-орієнтована програма обліку продуктового магазину