Шаг 23.
Добавление компоненты в конец очереди

    На этом шаге мы рассмотрим добавление компоненты в конец очереди.

    Добавление компоненты производится в конец очереди.

    Рассмотрим процесс добавления компоненты в конец очереди:

 New(pAux);


Рис.1. Сформируем новое звено очереди

 pAux^.pNext := Nil;


Рис.2. Ссылка нового звена на следующий элемент очереди не определена

 pEnd^.pNext := pAux;


Рис.3. Последний элемент очереди должен ссылаться на новое звено

 pEnd := pAux; 


Рис.4. Указатель на последний элемент очереди передвигаем

 pEnd^.Element := T2;


Рис.5. Результат добавления нового элемента в конец очереди


    Замечание.
    Добавление последующих компонент производится аналогично.

    Рассмотрим процедуру добавления элемента с полем данных T в конец очереди:

 Procedure Add_Queue(var pEnd: PtrRec; T: TypeElement);
 Var pAux : PtrRec;
  Begin
     New(pAux);
     pAux^.pNext := Nil;
     pEnd^.pNext := pAux; 
     pEnd := pAux;
     pEnd^.Element := T;
     Dispose(pAux);
     pAux := Nil;
  End;

    На следующем шаге мы рассмотрим удаление первой компоненты из очереди.




Предыдущий шаг Содержание Следующий шаг