Курсовая работа: Динамические структуры данных

}

}

По определению стека - удалять можно только последний элемент, не разрушая стека.

Входные параметры отсутствуют. Выходного значения нету.

2.3 Процедура очистки памяти

Процедура очистки памяти от всего стека, код:

voidtStack:: Free ()

{

if (temp) deletetemp; // если есть временная переменная temp, то очистить от неё память

if (pNext) // если есть хотя бы один элемент

{

temp = this; // temp присваивается текущее значение

pNext->Free (); // запускаем метод Free () для следующего элемента

}

}

Достаточно удалить первый элемент стека для разрушения стека, здесь удаляется весь стек с конца, т.е. сначала процедура доходит до конца стека, далее в обратном порядке удаляет в памяти значения элементов.

Входные параметры отсутствуют. Выходного значения нету.

2.4 Распечатка содержимого

Ниже приведен код распечатки содержимого всего стека:

void tStack:: Print (TMemo* memo)

{

memo->Lines->Add ("* - -------------- - *"); // вывод на экран значений

memo->Lines->Add (strFName);

memo->Lines->Add (strRValue);

memo->Lines->Add (IntToStr (numPar));

for (inti = 0; i < numPar; i++) // повторяем в цикле распечатку параметров с каждой новой строчки

{

memo->Lines->Add (pParam [i]); // добавление указателя pParam [i]

}

if (pNext) // если есть следующий элемент

pNext->Print (memo); // рекурсивно запустить распечатку следующего элемента

К-во Просмотров: 569
Бесплатно скачать Курсовая работа: Динамические структуры данных