// ННГУ, ВМК, Курс "Методы программирования-2", С++, ООП // // Copyright (c) Гергель В.П. 27.07.2000 // // Динамические структуры данных - стек - версия 2.2 #include "datlist.h" int TListStack :: IsFull(void) const { // контроль пустоты СД PTDatLink pTemp = new TDatLink(); int res = (pTemp==NULL) ? 1 : 0; delete pTemp; return res; } /*---------------------------------------------*/ int TListStack :: IsEmpty(void) const { // контроль переполнения СД return pFirst == NULL; } /*---------------------------------------------*/ void TListStack :: Put ( TData Val ) { // добавить значение в стек if ( IsFull() ) SetRetCode ( DataFull ); else { PTDatLink pTemp = new TDatLink(); pTemp->SetDatValue(Val); pTemp->SetNextLink(pFirst); pFirst = pTemp; SetRetCode ( DataOK ); } } /*---------------------------------------------*/ TData TListStack :: Get ( void ) { // извлечь значение из стека Skipped... } /*---------------------------------------------*/ void TListStack :: Print(void) { // печать стека PTDatLink pTemp = pFirst; cout << "Печать стека (от вершины)" << endl; while ( pTemp != NULL ) { cout << pTemp->GetDatValue() << " "; pTemp = pTemp->GetNextLink(); } cout << endl; }