//## begin module.cm preserve=no // %X% %Q% %Z% %W% //## end module.cm //## begin module.cp preserve=no //## end module.cp //## Module: List; Pseudo Package body //## Subsystem: figures //## Source file: H:\kurs\avC++\lab4\List.cpp //## begin module.additionalIncludes preserve=no //## end module.additionalIncludes //## begin module.includes preserve=yes //## end module.includes // List #include "List.h" //## begin module.additionalDeclarations preserve=yes //## end module.additionalDeclarations // Parameterized Class List template List::List() //## begin List::List%.hasinit preserve=no //## end List::List%.hasinit //## begin List::List%.initialization preserve=yes //## end List::List%.initialization { //## begin List::List%.body preserve=yes size = 0; head = NULL; current = NULL; //## end List::List%.body } template List::~List() { //## begin List::~List%.body preserve=yes while(head != NULL){ current = head; head = current->getNext(); delete current; } //## end List::~List%.body } //## Other Operations (implementation) template T List::getFirst () { //## begin List::getFirst%937920679.body preserve=yes current = head; return head->getData(); //## end List::getFirst%937920679.body } template T List::getNext () { //## begin List::getNext%937920680.body preserve=yes current = current->getNext(); return current->getData(); //## end List::getNext%937920680.body } template bool List::isLast () { //## begin List::isLast%937920681.body preserve=yes if(current == NULL) return false; return current->isLast(); //## end List::isLast%937920681.body } template void List::addElement (T element) { //## begin List::addElement%938503949.body preserve=yes Node* temp; temp = new Node(element); size++; if(head == NULL) head = temp; else{ current = head; while(!current->isLast()) current = current->getNext(); current->setNext(temp); } //## end List::addElement%938503949.body } template bool List::isEmpty () { //## begin List::isEmpty%939023037.body preserve=yes if(head == NULL) return true; return false; //## end List::isEmpty%939023037.body } // Additional Declarations //## begin List.declarations preserve=yes //## end List.declarations template int List::getSize () { //## begin List::isEmpty%939023037.body preserve=yes return size; //## end List::isEmpty%939023037.body } //## begin module.epilog preserve=yes //## end module.epilog